How to Find Matching Excel Cells and Copy Adjacent Dates
Question details
The user needs to locate all cells in a column that match a specific criterion and copy those records, including the adjacent dates, to a different worksheet.

- Product
- Excel
- Device & OS
- not provided
- Scenario
- Filtering specific data records based on a criterion and extracting the entire row or adjacent columns for reporting or consolidation.
- Observed behavior
- The goal is to extract complete records matching a condition, along with neighboring date columns, without manually searching and copying each row.
Ensure your dataset has clear, unique column headers and no completely blank rows, as this ensures accurate filtering and prevents missing data during extraction.
Use the Advanced Filter to Extract Matching Records
The Advanced Filter feature allows you to filter data based on specific criteria and immediately copy the matching rows (including adjacent dates) to a new location.
Advanced Filter is the most efficient native tool in Excel for extracting specific records to another worksheet without writing complex formulas. To avoid errors when copying to a different worksheet, you must start the process from the destination sheet.
On your source worksheet, create a criteria range by copying the exact column header you want to filter by, and typing your matching condition in the cell directly below it.
Switch to the new worksheet where you want to paste the results. This is crucial for copying data across different sheets.
Go to the 'Data' tab on the Excel ribbon and click 'Advanced' in the Sort & Filter group.
In the dialog box, select 'Copy to another location'. Set your 'List range' to include all your data columns on the source sheet (the matching column and adjacent date columns), and select the 'Criteria range' you created.
Click in the 'Copy to' box and select the starting cell on your current (destination) worksheet. Click 'OK' to instantly extract the matching data.

Extract Data Using the FILTER Function (Microsoft 365)
For users on newer versions of Excel, the FILTER function can dynamically pull matching records and adjacent columns into a new worksheet.
Filter and Extract Data Effectively with WPS Spreadsheet
WPS Office offers a powerful, user-friendly Spreadsheet application that fully supports Advanced Filters and dynamic data extraction. It provides a seamless experience for managing complex datasets without the high subscription costs.
- 1. Open your dataset in WPS: Launch WPS Spreadsheet and open your Excel workbook containing the data and dates.
- 2. Set your criteria: Define your matching criteria in blank cells by copying the header and typing the condition below it.
- 3. Use Advanced Filter: Navigate to the 'Data' tab, select 'Advanced', and choose 'Copy to another location'.
- 4. Extract records: Input your List, Criteria, and Copy-to ranges, then click 'OK' to instantly copy all matching cells and their adjacent dates.

Frequently Asked Questions
Why is the Advanced Filter grayed out or throwing an error when trying to copy to another sheet?
This usually happens if you initiate the filter command from the source sheet. To successfully copy data to a different worksheet, you must start the Advanced Filter command while you are actively viewing the destination worksheet.
Can I extract only the dates and not the entire row?
Yes. In the destination worksheet, type the exact column headers you want to extract (e.g., just the Date headers). When using the Advanced Filter, highlight those specific headers in the 'Copy to' range instead of a single blank cell.
How do I filter using multiple matching criteria?
You can add more conditions to your criteria range. Place criteria on the same row to use 'AND' logic (all conditions must be met), or on different rows to use 'OR' logic (any condition can be met).
Does the copied data update automatically if the original data changes?
No, the Advanced Filter extracts and copies static data. If you need the results to update dynamically when the source data changes, you should use the FILTER function or set up a PivotTable instead.




