where item is the named range B5:B12, and price is the named range D5:D11.
How this formula works
The LOOKUP function assumes data is sorted, and always does an approximate match. If the lookup value is greater than all values in the lookup array, default behavior is to "fall back" to the last previous value. This formula exploits this behavior by creating an array that contains only 1s and errors, then deliberately looking for the value 2, which will never be found.
LOOKUP searches the array for a value of 2, falls back to the last 1, and returns a value at the corresponding position in the results array.
First, this expression is evaluated:
When F7 contains "sandals" the result is:
which next serves as the divisor to 1, producing the final lookup array:
The lookup function looks for 2, then falls back to the last 1 (position 7 in the array), and returns the 7th item on the lookup array, a price of $15.
To read more about the concept of intentionally looking for a value that won't ever appear, read about BigNum.
To retrieve a date associated with a last entry tabular data, you can use a a formula based on the LOOKUP function. In the example shown the formula in H5 is: = LOOKUP ( 2 , 1 / ( C5:G5 <> "" ), C$4:G$4 ) How this formula works...
If you need find the value of the last non-empty cell in a row or column, you can use the LOOKUP function in this surprisingly compact formula. As an additional bonus, this formula is not an array formula, and not volatile. How this formula works...
The Excel LOOKUP function performs an approximate match lookup in a one-column or one-row range, and returns the corresponding value from another one-column or one-row range. LOOKUP's default behavior makes it useful for solving certain problems...
Excel Formula Training
Formulas are the key to getting things done in Excel. In this accelerated training, you'll learn how to use formulas to manipulate text, work with dates and times, lookup values with VLOOKUP and INDEX & MATCH, count and sum with criteria, dynamically rank values, and create dynamic ranges. You'll also learn how to troubleshoot, trace errors, and fix problems. Instant access. See details here.