The expression in green is in our system a long time, and it always worked. I needed the same to work elsewhere, the one in red. I copied it and focus on changing fields carefully. It returns the error "Data Type Mismatch in Criteria Expression". CmbEnt_ID003 and IntItmID011 is both of the "Number" Data type.
Me!VatRate004 = DLookup("VatRate063", "t02VatRate", "VatCode063='" & Me!VatCodeSales004 & "' And #" & Format([Forms]![f02SalesInvoice]![txt_DocumentDate], "yyyy/mm/dd") & "# Between [StartDate063] And [EndDate063b]")
Me!MnmAdjSlsPrc011 = DLookup("AdjstmntPrcntge003", "q02MngmntAdjSlsPrice", "CmbEnt_ID003='" & Me!IntItmID011 & "' And #" & Format([Forms]![f01Inventory]![T103], "yyyy/mm/dd") & "# Between [FromDate003] And [ToDate003]")