How to Extract Non-Empty Site Values and Headers with Excel Formulas
Question details
The user needs to extract specific site names and their corresponding values from a large dataset matrix, omitting any cells that contain placeholder double hyphens.

- Product
- Excel
- Device & OS
- not provided
- Scenario
- Filtering clean data and headers from a massive data matrix into a new summary sheet dynamically.
- Observed behavior
- The user requires an automated way to return only relevant data without manually omitting rows or columns marked with "--".
Ensure you are using a recent version of your spreadsheet application (such as Microsoft 365 or the latest WPS Office) that supports modern dynamic array functions like LET, FILTER, and VSTACK.
Use a Dynamic Array Formula Combining LET, FILTER, and VSTACK
This solution uses advanced array functions to dynamically stack headers and filter out placeholder characters, streamlining the entire extraction process into a single formula.
By utilizing the LET function, we can assign a portion of our formula to a variable to improve performance and readability. Combined with VSTACK to append headers and FILTER to exclude unwanted characters, you can instantly populate a clean dataset.
Open your workbook and go to the second sheet where you want the filtered headers and values to appear.
Click on the cell where you want the top-left corner of the data to begin (for example, cell K3).
Type or paste the following formula: =LET(f,FILTER('Practice Sheet'!$K$3:$ALZ$1000,'Practice Sheet'!$A$3:$A$1000=A3),FILTER(VSTACK('Practice Sheet'!$K$2:$ALZ$2,f),f<>"--")). Be sure to adjust the sheet name ('Practice Sheet') and the cell ranges to match your specific workbook structure.
Press Enter. The formula will calculate and automatically spill the non-empty site values and corresponding headers into the adjacent cells.

Process Large Datasets Effortlessly with WPS Spreadsheet
WPS Spreadsheet fully supports advanced dynamic array formulas including LET, FILTER, and VSTACK, making it incredibly simple to manipulate, clean, and extract massive data matrices in seconds.
- 1. Open Your File: Launch WPS Spreadsheet and open your existing data workbook.
- 2. Select the Output Cell: Click on the cell on a new sheet where you want to output the clean data.
- 3. Input the Dynamic Formula: Paste your custom LET, FILTER, and VSTACK formula into the formula bar.
- 4. Extract the Data: Hit Enter. WPS Spreadsheet will instantly calculate and dynamically spill your cleaned headers and values.

Frequently Asked Questions
Why does my formula return a #NAME? error?
A #NAME? error usually indicates that your version of Excel or spreadsheet software does not support the newer functions used in the formula, such as LET or VSTACK. Consider upgrading your software to a current version that supports dynamic arrays.
What if my blank values are just empty cells instead of double hyphens?
If your empty data is represented by actual blank cells rather than "--", you can adjust the condition in the outer FILTER function to f<>"" instead of f<>"--".
Can I reference a data matrix from a completely different workbook?
Yes, you can reference external workbooks. Ensure both workbooks are open, and update the range references in your formula to include the external file name, for example: '[Data.xlsx]Practice Sheet'!$K$3:$ALZ$1000.
Why do I get a #SPILL! error when pressing Enter?
A #SPILL! error occurs when the formula attempts to populate cells, but one or more of the destination cells are not empty. Clear the surrounding cells to provide enough space for the array to spill.




