How to Use Excel FILTER Formula for Unique Monthly Matches
Question details
The user wants to extract a list of items from a master dataset based on whether a specific date column falls within a selected month.

- Product
- Excel
- Device & OS
- not provided
- Scenario
- Filtering a master data list to dynamically return row items that match a specific target month, such as filtering paid-in-full dates.
- Observed behavior
- The goal is to dynamically extract all valid rows between the first and last day of a specific month without manual filtering.
Ensure your dataset contains properly formatted date columns and that you are using a spreadsheet version that supports dynamic array functions like FILTER and UNIQUE.
Use the FILTER and EOMONTH Functions
Combine the FILTER function with EOMONTH to extract data that falls exactly between the first and last day of a selected month.
The FILTER function allows you to extract data dynamically based on specific conditions. By multiplying two date criteria (greater than or equal to the month's start date, and less than or equal to the month's end date), you create an 'AND' logic array that forces Excel to pull the exact monthly matches.
Select an empty cell (e.g., B73) and input the first day of your target month, such as '1/1/2023'.
Click on the cell where you want the top-left corner of your filtered results to appear.
Type the formula: =FILTER(Master!J5:J104,(Master!A5:A104>=$B$73)*(Master!A5:A104<=EOMONTH($B$73,0)),"No Data"). Ensure you change 'Master!J5:J104' to the column you want to return, and 'Master!A5:A104' to your date column.
Press the Enter key. The formula will automatically spill the matching data into the rows below your selected cell.

Easily Filter Monthly Data with WPS Spreadsheet
WPS Spreadsheet fully supports dynamic array functions like FILTER, UNIQUE, and EOMONTH out of the box. You can effortlessly manage and analyze your monthly datasets with high performance and familiar syntax.
- 1. Open your workbook: Launch WPS Spreadsheet and open the document containing your master dataset.
- 2. Select the target cell: Click on the empty cell where you want to output your monthly filtered list.
- 3. Enter the FILTER function: Type =FILTER() and select your return array and date criteria using the EOMONTH calculation.
- 4. Generate the results: Press Enter to instantly display your spilled monthly matches without altering the original master list.

Frequently Asked Questions
What if the FILTER function returns a #CALC! error?
A #CALC! error usually occurs when the FILTER function finds no matching records for the selected month. You can prevent this error by adding a fallback value in the third argument of your formula, such as "No Data".
How can I ensure the returned monthly matches are entirely unique?
If your master list contains duplicate entries for the same month, you can wrap your entire FILTER formula inside the UNIQUE function. The structure would look like =UNIQUE(FILTER(return_array, criteria)).
Does the EOMONTH function work with text dates?
No, the EOMONTH function requires a valid serial date format to calculate the end of the month correctly. Ensure your reference cell is formatted as a Date rather than plain text in your spreadsheet settings.




