我花了几个小时在网上搜索,无法找到并回答为什么我的语法错误。我有一个有很多记录的表,它们都是使用 Now () 的日期戳。我正在使用以下代码获取最新记录。
MaxDate = DMax("AuditDateTime", "Tbl_Data_Claim")
现在我正在尝试使用 DLookup 来获取我想要的字段并将其放入我的表单中。
Me.Frm_Data_Claim_subform!TBSClaim_DOL = DLookup("[Claim_DOL]", "Tbl_Data_Claim", "[AuditDateTime] = " & [MaxDate] & "'")
我在查询表达式“[AuditDateTime] = 9 / 16 / 2018 2:32:14PM”中得到一个运行时错误 '3075' 语法错误 (缺少运算符)。该标准正在工作,因为我的时间戳显示在错误中。我确信这只是一个错误的引用或简单的东西。我已经尝试了各种排列,似乎没有任何工作。提前谢谢。
DMax返回一个日期值,而DLookup中的筛选器需要该日期值的字符串表达式。
通用(也在美国以外工作)方法是:
"[AuditDateTime] = #" & Format([MaxDate], "yyyy\/mm\/dd hh\:nn\:ss# & "#"
但是,你可以,避免格式化:
Me.Frm_Data_Claim_subform!TBSClaim_DOL = DLookup("[Claim_DOL]", "Tbl_Data_Claim", "[AuditDateTime] = DMax('AuditDateTime', 'Tbl_Data_Claim')")
请注意将双引号更改为单引号。
提出问题后。我一直在寻找并找到答案,嗯。我找到了一些接近的东西,然后修改,直到它工作。
Me.Frm_Data_Claim_subform!TBSClaim_DOL = DLookup("[Claim_DOL]", "Tbl_Data_Claim", "AuditDateTime = #" & MaxDate & "#")
因为变量是一个日期,我需要在 # 中的括号,希望这有助于别人。
本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处
评论列表(3条)