Function Problems

WPS Spreadsheet: Check Column Values Against a Dynamic List

Aamir Naveed AkramAamir Naveed Akram Nov 12, 2026 869 views

Question details

The user needs to return TRUE or FALSE for each value in a large column according to whether that value exists in a dynamically changing list.

Product
WPS Spreadsheet
Device & OS
not provided
Scenario
A target column must be checked against a selected or formula-generated list whose contents can change over time.
Observed behavior
Each target value should display TRUE when it is found in the dynamic list and FALSE when it is not found.
Before you start

Identify the target column and the cell or named range that contains the dynamic list. If the list is generated by a spilling formula, confirm its spill anchor cell, such as H2, and decide how blank target cells should be handled.

Solution 1Recommended

Use XMATCH, ISNA, and NOT to test dynamic list membership

Use this method when the selected values are stored in a dynamic range or a formula-generated spill list and each target value needs a TRUE or FALSE result.

XMATCH searches for the target value in the list and returns a position when it finds a match. When no match exists, XMATCH returns #N/A; ISNA detects that result, and NOT converts it into TRUE for a match and FALSE for a non-match.

1
Select the result cell

In WPS Spreadsheet, select the first result cell beside the target column, such as B2, next to the value in A2.

2
Enter the membership formula

Enter =NOT(ISNA(XMATCH(A2,$H$2#,0))) and press Enter. Replace A2 with the first target value and $H$2# with the spill range beginning at the dynamic list's anchor cell.

3
Fill the formula down

Drag the fill handle from the result cell down the target column, or copy the formula and use Home > Paste to apply it to the remaining rows.

4
Use a named or fixed dynamic range when needed

If the list has a defined name, replace $H$2# with that name, such as =NOT(ISNA(XMATCH(A2,selected_list,0))). Use exact-match mode 0 to avoid partial or approximate matches.

Use XMATCH, ISNA, and NOT to test dynamic list membership
Result interpretation: The formula returns TRUE when the target value is present in the dynamic list and FALSE when XMATCH cannot find it. If blank target cells should remain blank, use =IF(A2="","",NOT(ISNA(XMATCH(A2,$H$2#,0)))).

Check Dynamic List Membership with WPS Spreadsheet Formulas

WPS Spreadsheet can compare a large target column with a changing selection list using XMATCH, ISNA, and NOT. Enter the formula once, reference a spilling list or named range, and fill it down to produce reliable TRUE or FALSE results.

  1. 1. Open the workbook: Launch WPS Spreadsheet and open the workbook containing the target column and dynamic selection list.
  2. 2. Choose the result column: Click the first empty cell beside the target value column where the membership result should appear.
  3. 3. Enter the XMATCH formula: Enter =NOT(ISNA(XMATCH(A2,$H$2#,0))), replacing A2 and $H$2# with the target cell and dynamic list anchor used in your workbook.
  4. 4. Apply the formula to all rows: Press Enter, then drag the fill handle down or use Home > Fill > Down to check the complete column.
Return TRUE or FALSE for each value using an exact-match formula.Reference dynamic spill ranges, named ranges, or formula-generated lists.Use COUNTIF or COUNTIFS when a simpler multi-criteria check is more suitable.Open and edit Microsoft Excel XLSX and XLS workbooks with familiar spreadsheet tools.
microsoft office alternative - wps office

Frequently Asked Questions

How do I check one Excel column against a dynamic spill list in WPS Spreadsheet?

If the list starts in H2 and spills downward, enter =NOT(ISNA(XMATCH(A2,$H$2#,0))) beside the first target value, then fill the formula down. The # reference expands as the spill list changes.

Why does XMATCH return #N/A for some values?

#N/A means XMATCH did not find an exact match in the referenced list. Check for extra spaces, different number or text types, spelling differences, and whether the formula references the correct spill range.

Can I use a named range instead of a spill reference?

Yes. Replace $H$2# with the named range, for example =NOT(ISNA(XMATCH(A2,selected_list,0))). Confirm that the name includes the current dynamic list rather than only its original fixed cells.

How can I keep blank target rows from returning TRUE?

Wrap the test in an IF function: =IF(A2="","",NOT(ISNA(XMATCH(A2,$H$2#,0)))). This leaves empty target rows blank while returning TRUE or FALSE for populated rows.