Вы делаете это слишком сложным:
DLookUp("[Price]", "[Prices]", "sUPC = 'UPC' And [EFFDATE] = DMax('[EFFDATE]', '[Prices]', '[EFFDATE] <= Date()')")
Для конкретной даты:
DLookUp("[Price]", "[Prices]", "sUPC = 'UPC' And [EFFDATE] = #" & Format(SomeOtherDateValue, "yyyy\/mm\/dd") & "#")
или их комбинация:
DLookUp("[Price]", "[Prices]", "sUPC = 'UPC' And [EFFDATE] = DMax('[EFFDATE]', '[Prices]', '[EFFDATE] <= #' & Format(SomeOtherDateValue, 'yyyy\/mm\/dd') & '#')")