For Lookup() to work properly the first column of the lookup table must be in ascending order.... and if you want an exact match, then Lookup() might not always give it to you...try Vlookup() instead...
e.g.
=IF('[MPP Grocery Packet CAO 2.xls]PLAN'!D24<1,"",VLOOKUP('[MPP Grocery Packet CAO 2.xls]PLAN'!D24,'[MPP Grocery Packet CAO 2.xls]PLAN'!$B$46:$C$57,2,False))
copied down.
I also noticed that you did not make your lookup table absolute... you need to add the $ signs in front of the row and column references before copying down in order for the table to be "frozen".
Bookmarks