当条件满足时,我的VBA代码没有反应

时间:2017-10-18 15:32:17

标签: vba ms-access

我在Microsoft Access中使用VBA。我希望代码在用户完成"停机时间"的每个条目之前运行。我试图确保框的值不是负数。该框实际上包含一个公式。我不知道这是否重要,但我想我会提到这一点。我想检查计算结果(该框中显示的值),如果它小于0,我想要弹出一个MsgBox。我的代码什么也没做。没有错误,没有弹出窗口,没有警告。

这是我的代码。

Private Sub Form_BeforeUpdate(Cancel As Integer)
    If (Me.RunningTotal.Value < 0) Then
        MsgBox (RunningTotal & "Please check your downtime.")
        Cancel = True
    End If
End Sub 

我尝试过使用&#34; RunningTotal&#34;括号内也没有运气。我也尝试过beforeupdat以及afterupdate。

1 个答案:

答案 0 :(得分:0)

我得到了它的工作。我必须将代码放在用户的数据输入框中并作为“更新后”,因为直到输入完成后才会进行计算。感谢Darren,感谢您的帮助。 :)这是有效的代码。

*Private Sub MinutesDown_AfterUpdate()
    If (Me.RunningTotal < 0) Then
        MsgBox (RunningTotal & "Please check your downtime.")
        Cancel = True
    End If
End Sub*