Function Problems

WPS Spreadsheets: Use INDEX and MATCH for Date and Article Price Lookups

Khadija KhanKhadija Khan Nov 12, 2026 869 views

Question details

The user needs to return an article price based on both an article name and a delivery date.

Use INDEX and MATCH for Date and Article Price Lookups in WPS Spreadsheets
Product
WPS Spreadsheets
Device & OS
not provided
Scenario
A pricing table contains different article prices for date ranges, and the user wants a maintainable lookup instead of nested IF and VLOOKUP formulas.
Observed behavior
The goal is to identify the price column by article and the matching row whose start and end dates contain the delivery date.
Before you start

Arrange the article names as headers above the price columns, and place the start date and end date for each pricing period in separate columns. Confirm that the delivery date and date-range cells are stored as valid spreadsheet dates rather than text.

Solution 1Recommended

Combine INDEX and MATCH for a two-condition price lookup

Use this method when the price depends on both the article header and a delivery date within a defined start-and-end range.

In this example, article names are in B1:D1, prices are in B2:D100, start dates are in E2:E100, end dates are in F2:F100, the delivery date is in G2, and the article name is in H2. The first MATCH selects the row whose date range contains the delivery date; the second MATCH selects the article column.

1
Set up the lookup table

In WPS Spreadsheets, place article names in B1:D1, corresponding prices in B2:D100, start dates in E2:E100, and end dates in F2:F100. Enter the delivery date in G2 and the article name in H2.

2
Enter the INDEX and MATCH formula

Select the result cell and enter =INDEX($B$2:$D$100,MATCH(1,INDEX(($E$2:$E$100<=G2)*($F$2:$F$100>=G2),0),0),MATCH(H2,$B$1:$D$1,0)). Press Enter to return the price.

3
Check the returned price

Change the delivery date in G2 or the article name in H2. WPS Spreadsheets will recalculate the result using the matching article column and the row whose start and end dates contain the date.

Use real dates and consistent article names: The formula requires the date cells to contain valid dates. Article text in H2 must match one of the headers in B1:D1, including spelling and spaces.

Build flexible date-and-article price lookups in WPS Spreadsheets

WPS Spreadsheets lets you organize pricing tables and use INDEX with MATCH to return values by article and date range. Its familiar formula workflow supports Excel-compatible workbooks, making it easy to replace nested IF and VLOOKUP formulas.

  1. 1. Open the workbook: Launch WPS Office, choose Spreadsheet, and open the pricing workbook from the Home screen.
  2. 2. Organize the lookup ranges: Place article headers above the price columns and keep start dates and end dates in separate columns beside the pricing table.
  3. 3. Enter the lookup inputs: Type the delivery date and article name into dedicated cells, such as G2 and H2.
  4. 4. Insert the formula: Select the result cell and use =INDEX($B$2:$D$100,MATCH(1,INDEX(($E$2:$E$100<=G2)*($F$2:$F$100>=G2),0),0),MATCH(H2,$B$1:$D$1,0)) to return the matching price.
Return prices using both an article name and a delivery-date rangeReplace difficult nested IF formulas with a maintainable INDEX and MATCH setupOpen, edit, and save Microsoft Excel XLSX workbooks with compatible formatting and formulasUse a familiar spreadsheet interface for testing and updating pricing tables
QA img-9

Frequently Asked Questions

What does the first MATCH function do in this lookup?

It finds the row where the delivery date is greater than or equal to the start date and less than or equal to the end date. The expression ($E$2:$E$100<=G2)*($F$2:$F$100>=G2) produces a 1 for the matching row.

What does the second MATCH function do?

It finds the position of the article name in H2 within the article headers in B1:D1. INDEX then uses that position to select the correct price column.

Why does the formula return an error?

Check that the delivery date is a valid date, the start and end ranges are aligned with the price rows, and the article name exactly matches a header. Also make sure the date ranges do not overlap unexpectedly.

Can I use this formula with more than three articles?

Yes. Expand the price range and header range, such as B2:Z100 and B1:Z1, while keeping the article headers aligned with their price columns.

How can I show a message when no price is available?

Wrap the INDEX and MATCH formula in IFERROR, for example =IFERROR(your_formula,"No matching price"). This displays a readable message when the article or date range cannot be found.