How to Replace a Long Nested IF Formula with a Lookup in Excel
Question details
The user needs a method to dynamically subtract matching values from a separate worksheet based on randomly ordered vessel numbers, without resorting to writing 40 nested IF statements.
- Product
- Spreadsheets
- Device & OS
- not provided
- Scenario
- Calculating values by subtracting referenced data from a master worksheet based on random numerical identifiers found in another worksheet.
- Observed behavior
- The goal is to dynamically subtract a matching value using an efficient lookup method instead of manually creating and managing 40 individual IF conditions.
Ensure both of your worksheets are within the same workbook, and identify the exact cell ranges containing your reference values to prevent broken links or reference errors.
Use the INDIRECT Function to Replace Nested IFs
Utilize the INDIRECT function to dynamically build a cell reference based on the item number, bypassing the need for multiple IF conditions entirely.
When dealing with sequentially numbered items (like vessels numbered 1 to 40) mapped to specific rows, the INDIRECT function allows you to construct a text string that the spreadsheet interprets as a valid cell reference. This drastically reduces formula length and complexity.
Locate the cell containing your random item number (for example, A1) and the base value cell you need to subtract from (for example, B1).
In your calculation cell, input the formula =B1-INDIRECT("'tab A'!B"&A1). Replace 'tab A' with the actual name of your reference worksheet.
Press Enter to calculate the result, then click and drag the fill handle at the bottom right corner of the cell to apply this dynamic lookup formula down through the remaining rows.
Handle Complex Formulas Easily with WPS Spreadsheet
WPS Spreadsheet provides robust support for advanced lookup and reference functions like INDIRECT, VLOOKUP, and XLOOKUP, making it incredibly easy to replace lengthy nested IF formulas in large datasets.
- 1. Open your Workbook: Launch WPS Spreadsheet and open the file containing your multiple worksheets.
- 2. Locate the Function Library: Navigate to the 'Formulas' tab on the top ribbon to explore the available lookup and reference functions.
- 3. Insert the Formula: Type =B1-INDIRECT("'tab A'!B"&A1) into the target cell, adjusting the sheet names and references to match your data.
- 4. Fill the Data Down: Double-click the small square at the bottom right of the cell to instantly autofill the formula for all corresponding items.

Frequently Asked Questions
Can I use VLOOKUP instead of INDIRECT to avoid nested IFs?
Yes, if your reference sheet has the item numbers listed in the first column, you can use VLOOKUP. For example: =B1-VLOOKUP(A1, 'tab A'!A:B, 2, FALSE). This finds the matching number in column A and returns the corresponding value from column B.
What is the maximum number of nested IF functions allowed?
Modern spreadsheet applications, including WPS Spreadsheet and Excel, allow up to 64 nested IF statements. However, using lookup functions like VLOOKUP, XLOOKUP, or INDIRECT is highly recommended over nesting more than 3-4 IFs to maintain performance and readability.
Why is my INDIRECT formula returning a #REF! error?
A #REF! error typically occurs if the worksheet name is misspelled in the formula string, if you forgot to include single quotes around a worksheet name that contains spaces, or if the resulting cell reference does not exist on that sheet.




