Ms access 将变量设置为空值时出错
我正在尝试以一种表单编写一个模块,该表单基于用户输入IssueDate控件和相关表中的DaysValid字段自动填充ExpiryDate控件。如果DaysValid中没有数据,它会将该记录视为永不过期的记录,并将ExpiryDate留空 以下是当前的模块:Ms access 将变量设置为空值时出错,ms-access,vba,Ms Access,Vba,我正在尝试以一种表单编写一个模块,该表单基于用户输入IssueDate控件和相关表中的DaysValid字段自动填充ExpiryDate控件。如果DaysValid中没有数据,它会将该记录视为永不过期的记录,并将ExpiryDate留空 以下是当前的模块: Private Sub IssueDate_AfterUpdate() If Not IsNull(IssueDate) Then Dim DysVld As Integer DysVld = DLookup("[DaysV
Private Sub IssueDate_AfterUpdate()
If Not IsNull(IssueDate) Then
Dim DysVld As Integer
DysVld = DLookup("[DaysValid]", "tblInduction", "[ID] = " & Me.Induction)
If IsNull(DysVld) Then
Exit Sub
End If
ExpiryDate.Value = DysVld + IssueDate
End If
End Sub
如果tblInduction.DaysValid中没有值,则会出现运行时错误94-无效使用Null。由此我推断,我不允许将变量设置为空值。。。我可以把下面的if子句放在前面,但这似乎比必要的要麻烦得多。处理这个问题的最佳实践是什么?错误处理程序?防止错误
只有variant变量可以保存Null。DysVld变量声明为整数。将其声明为变体或更改代码
DysVld = Nz(DLookup("[DaysValid]", "tblInduction", "[ID] = " & Me.Induction),0)
If DysVld <> 0
DysVld=Nz(DLookup(“[DaysValid]”)、“tblInduction”、“[ID]=”&Me.inclusion),0)
如果DysVld为0
啊!新西兰功能!那会帮我解决的。谢谢