Why VLOOKUP returns #N/A
The VLOOKUP formula was dragged down through all the orders, and almost every row got a price. But two rows show #N/A, "not available": that's how VLOOKUP answers when it can't find the key in the lookup table. The errors look the same, but their causes are different. Find out what's wrong with these item numbers:
Item 1004 is in the price list, but in the order it's a number stored as text, and to VLOOKUP the text "1004" and the number 1004 are different values. Item 1009 isn't in the price list at all.
How to tell what's wrong
#N/A in VLOOKUP has three common causes. Each one has its own sign, and each is fixed differently:
Convert to Number is hidden in the menu of the icon with an exclamation mark next to the cell. If many item numbers are stored as text, select the whole column: the menu item fixes them all at once.
A space in a text key
For a city, a last name or a code like KB-1004, one space at the end is enough for VLOOKUP to stop recognizing it. A whole column is cleaned with the TRIM function, and a single cell is easier to type again:
The key really isn't there: IFERROR
Item 1009 isn't in the price list, and there's nothing to fix here. But in a report, #N/A looks like something broke, and it's clearer to say it plainly: "not in list". That's what the IFERROR function is for. It calculates a formula and, if the result is an error, shows a fallback answer instead.
The finished VLOOKUP, whole and without the = sign, goes in as the first argument, and the fallback text in quotes as the second. Just as AND goes inside IF, here one function ends up inside another:
=IFERROR(VLOOKUP(A2,$D$2:$F$6,3,0),"not in list")
Excel calculates a formula like this from the inside out: first VLOOKUP, then IFERROR looks at its answer.
IFERROR hides any error, even one you could fix. On the third tab, cable 1004 ended up as "not in list" even though it's in the price list: its item number is stored as text. That's why you fix the keys first and only then wrap VLOOKUP in IFERROR.