1) to build the max: depending on your real file, use if, while or for each or anything else... to loop on each price cells of a row and keep in a variable only if bigger than previous. Then put the variable into your max column
Can you change the original sheets by adding a column of your own? if yes, quickest way is to create a "unique" key column, combining item+ max, (both sheets). It will be your key for the vlookup
to get the biggest number of row to process you can make an easy stuff on your bigger sheet like;
For i = 1 To 999999
If Cells(i, 1) = 0 Then
Endlign = i- 1
Exit For
Endif
next i
then anything you do, you do it from 1 to Endlign. Don't forget to add some ""On error resume next" no to bug on inexisting key in shortest sheet
Not sure it is clear, but hard to be more precise as I don't know exactly how your sheets look like