Microsoft AccessでVBAを使用しています。ユーザーが「停止時間」の各入力を完了する前に、コードを実行する必要があります。私は、ボックスの値が負の数でないことを確認しようとしています。ボックスには実際に数式が保持されます。それが重要かどうかはわかりませんが、私はそれについて言及すると思いました。計算の結果(そのボックスに表示されている値)をチェックし、0より小さい場合はMsgBoxをポップアップしたいと思います。私のコードは何もしていません。エラーもポップアップも警告もありません。条件が満たされたときにVBAコードが反応しない
ここに私のコードです。
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
"RunningTotal"を括弧で囲んで使用してみました。私もbeforeupdatとafterupdateを試しました。
'BeforeUpdate'イベントは計算されたコントロールでは発生しません。ユーザーが_downtime_の入力を完了したとします。 - ユーザーが手動で完了したコントロールにコードを追加します。 –
それは私がコードを試した最初の場所でした。すみません、私もそう言及すべきでした。私は、ユーザー入力ボックス、フォーム自体と計算フィールドにコードを入れてみました。 – Flammie