How to Keep Extra Data Matched to FILTER Results in Excel
Question details
The user needs to ensure manually entered notes stay associated with the correct records when dynamic FILTER results change their row positions.

- Product
- Excel
- Device & OS
- not provided
- Scenario
- Working with dynamic arrays and the FILTER function where adjacent manual data entry becomes misaligned from the filter array.
- Observed behavior
- Notes become associated with the wrong item when the dynamic FILTER results expand, contract, or change row position.
Ensure your source data has a dedicated column containing a unique identifier for each row, such as a Product ID, Employee ID, or a sequential number, before applying the FILTER function.
Use a Unique ID and Lookup Function to Link Notes
The most robust way to keep manual notes matched to dynamic FILTER arrays is to store notes in a separate mapping table and use a lookup function like XLOOKUP to retrieve them.
Because the FILTER function dynamically resizes and shifts results, any manually typed data placed next to the spill range remains static and won't move with the records. To fix this, you must bind your notes to a unique record ID instead of a static cell reference.
Insert a new column in your original source data table (for example, Column A) and populate it with unique ID numbers for every single row.
Modify your existing FILTER formula to ensure the ID column is included in the output range. For example: =FILTER(Sheet1!A2:D100, Sheet1!C2:C100="Sales", "No Data").
On a new sheet or different section of your workbook, create a dedicated manual table for your notes containing two columns: 'Unique ID' and 'Notes'.
Next to your dynamic FILTER results on the main sheet, add an XLOOKUP formula to fetch the note based on the ID. For example: =XLOOKUP(A2, NotesTable[ID], NotesTable[Note], ""). Drag this formula down to cover the potential spill range of your filtered data.

Effortlessly Manage FILTER Data and Formulas in WPS Office
WPS Spreadsheet fully supports modern dynamic array functions including FILTER and advanced lookup functions like XLOOKUP. This makes it easy to align data correctly without misplacing your manual notes, offering a seamless spreadsheet experience.
- 1. Open Your Spreadsheet: Launch WPS Office and open your Excel workbook containing the dataset and manual notes.
- 2. Apply the FILTER Function: Select the target cell and enter your =FILTER() formula, ensuring your source data includes the unique ID column in the output.
- 3. Add the XLOOKUP Formula: In the adjacent column, use =XLOOKUP() to fetch your manual notes based on the unique ID, keeping extra data perfectly aligned regardless of dynamic shifting.

Frequently Asked Questions
Why do my manual notes misalign with FILTER results?
The FILTER function generates a dynamic array that shifts, reorders, and resizes depending on changes to the source data. Manually typed notes in adjacent spreadsheet cells remain completely static, so they immediately lose their alignment when the underlying filtered records move.
Can I use INDEX/MATCH instead of XLOOKUP to link notes?
Yes. If you prefer using legacy functions, you can retrieve matched notes using an INDEX and MATCH combination. For example: =INDEX(NotesRange, MATCH(A2, UniqueIDRange, 0)) will achieve the exact same dynamic alignment result as XLOOKUP.
What if my source data doesn't have a unique ID?
If your data lacks a native unique identifier like a product code or employee ID, you can easily create an artificial one. Simply insert a new column into your source table and use the SEQUENCE function, or manually number the rows 1, 2, 3, etc., before applying your filter.
Does WPS Office spreadsheet support the FILTER function?
Yes, modern versions of WPS Office fully support dynamic array formulas including both FILTER and XLOOKUP, guaranteeing full format and formula compatibility when opening or editing Microsoft Excel workbooks.




