2017-02-16 27 views
0
If [Due_date] < (Date - 1826) Then 
j = (MsgBox("This invoice is long overdue, isn't it. Is it correct? 
    Do you want to save it?", vbYesNo, "Due date < 5 yrs from Today")) = 7 

If j = -1 Then DoCmd.GoToControl ("Due_date"): GoTo 9999 

何时j将具有-1值。 我试图看看每一个地方,找不到它。当MsgBox函数以ms访问返回-1时,vbYesno中的值为

回答

0

你应该坚持的常量 - 和重写一点点的可读性:

If [Due_date] < DateAdd("yyyy", -5, Date) Then 
    If MsgBox("This invoice is long overdue, isn't it. Is it correct? Do you want to save it?", vbQuestion + vbYesNo, "Due date < 5 yrs from Today") = vbNo Then 
     DoCmd.GoToControl "Due_date" 
    Else 
     GoTo 9999 
    End If 
End If