为什么我的DLookup产生“invalid use of null”错误:94
在我的Access VBA代码中,我有几个顺序的DLOOKUP
函数。 他们都是一样的,除了他们从'studys'返回的参数的价值。
最后一个偶尔会产生错误:
无效的使用null
产生错误的代码行是:
necropsy = DLookup("[Necropsy]", "Studys", "[Primary Key] = " & ID)
“研究报告”中的尸检值偶尔是一个空的date,但这就是为什么我要查找它。
比较上面那行:
studyEnd = DLookup("[Study End]", "Studys", "[Primary Key] = " & ID)
这段代码运行良好。 它永远不会返回空值,因为研究结束永远不会为空。
这是怎么回事?
如果您将Dim necropsy As Date
,则necropsy
不能接受Null,因为Null不是date/时间值。
如果你想允许necropsy
接受Null,那么把它变成一个Variant: Dim necropsy As Variant
VBA中的date不能为空。
如果你只是删除variables声明,它将作为不为空的date返回。