How to Compare Excel Lists Using Multiple Criteria Without Helper Columns
Question details
The user needs Excel formulas to compare an old batch list with a current batch list to count corrected batches, new variances, and total outstanding variances without relying on helper columns.
- Product
- Excel
- Device & OS
- not provided
- Scenario
- Comparing two data lists (old vs. new) to identify status changes and count specific variances based on multiple criteria.
- Observed behavior
- The user is looking for a single-formula solution to accurately identify and count batches that no longer have a variance (corrected) and batches that newly have a variance (new), bypassing the need for intermediate helper columns.
Ensure both your old and current batch lists are formatted as standard tables or have clearly defined named ranges to prevent formula errors when data dynamically expands or shrinks.
Use Nested FILTER, XLOOKUP, and COUNTIF Formulas
Combine modern dynamic array functions to logically evaluate criteria and count variances between two lists within a single cell formula.
To avoid helper columns, you must nest your lookup functions inside your counting or filtering functions. By evaluating arrays in memory, functions like XLOOKUP can return the matching statuses from the old list directly into the logical test of the new list.
Identify the columns for your comparison, such as Column A for Batch IDs and Column B for the Variance Status in both your 'OldList' and 'CurrentList'.
Use a formula like `=SUM(ISNA(XLOOKUP(CurrentList!A:A, OldList!A:A, OldList!A:A))*(CurrentList!B:B="1"))` to count items that have a variance in the current list but did not exist in the old list.
Use XLOOKUP to check previous statuses. For example, `=SUM((XLOOKUP(CurrentList!A:A, OldList!A:A, OldList!B:B)="1")*(CurrentList!B:B="0"))` counts batches that previously had a variance but now have a cleared status.
Use `=COUNTIF(CurrentList!B:B, "1")` to simply sum all remaining active variances in the current dataset.
Compare Data Lists Easily with WPS Spreadsheet
WPS Spreadsheet fully supports advanced array formulas like XLOOKUP and FILTER, allowing you to seamlessly compare complex datasets and count variances without cluttering your workbook with helper columns.
- 1. Open Your Workbooks: Launch WPS Spreadsheet and open the document containing your old and current batch lists.
- 2. Select the Target Cell: Click on the cell where you want your 'Corrected' or 'New' variance count to appear.
- 3. Enter the Array Formula: Type in your nested XLOOKUP and COUNTIF/SUM formula to compare the lists in memory.
- 4. Evaluate the Results: Press Enter to instantly calculate and display the total counts without generating any helper columns.

Frequently Asked Questions
Why is XLOOKUP returning an #N/A error when comparing the two lists?
XLOOKUP returns an #N/A error if the batch ID doesn't exist in the lookup array (for example, a completely new batch). You can handle this gracefully by using the 'if_not_found' parameter built into the XLOOKUP function, such as XLOOKUP(A2, Old!A:A, Old!B:B, "Not Found").
Can I use SUMPRODUCT instead of COUNTIF with FILTER for multiple criteria?
Yes, SUMPRODUCT is highly effective for evaluating multiple criteria across arrays without helper columns. It natively handles multiple boolean array comparisons (multiplying True/False matrices), which often makes evaluating complex old vs. new logic easier to manage than nested COUNTIFS.
How do I identify a batch that was removed entirely in the current list?
You can use the FILTER function combined with ISNA and MATCH or XLOOKUP. By filtering the 'Old List' where an XLOOKUP against the 'Current List' returns an error, you can extract or count items that existed previously but are now completely missing.




