我尝试在宏中使用 DLookup 从查询中检索计数,但它不允许我这样做,并且我收到错误 2001。我尝试查找解决方案,但找不到。我附上了宏和错误的图片。欢迎任何建议。
答案1
可能的原因(没有数据库很难确认):如果函数DLookup
在某些条件下失败,您将收到一般错误 (2001)。IF 条件有效(因为宏错误对话框显示有效),而 SetValue 目标字段 (Item) 错误将给出不同的错误编号。
DLookup
如果字段、表或查询名称错误,或者数据类型错误(在条件表达式中),则函数可能因该错误而失败。
您可以DLookup
通过将表达式粘贴到 VBA 即时窗口中来检查参数是否正确:按Alt-F11
打开 VBA IDE,然后Ctrl-G
打开即时窗口并粘贴以下内容并按 Enter:
?DLookup("CountOfTreatment_ID","FacilityTreat_CountMacro_Qry","Facility_IDx=1")
通过这种方式运行时出现的错误消息将为您提供有关该问题的更多信息。