私のプログラムは、この文を過ぎて処理しません:アクセス2007 VBAのヌル
Dim valid as Boolean
If MyComboBox.Value Is Not Null Then valid = true
なぜいけないのでしょうか?
停止点を使用して手順を実行しようとすると、プログラムは次の手順に進みませんが、vbaコードが実行されていないかのようにフォームが実行され続けます。これは、何も間違っていても意図した動作が起こっていないかのようにフォームを使用できることを意味するため、迷惑です。
をStackOverflowのへようこそ。あなたはそれが何をすると思いますか? 'Valid'は、悪いテストが1つの条件を満たす場合にのみセットする'ブール '変数であり、投稿したコードの後に' Valid'で何もしません。 (より良いテストは 'If MyComboBox.Text <>" "または' Valid = MyComboBox.Text <> "" 'のようなものになり、' 'Valid''が真か偽かによって何かを行います) –
Testing AccessのMyComboBox.Textは、コントロールにフォーカスがあるときにのみ動作します。コントロールがNullであるかどうかをチェックするのが最適な解決法です(If IsNull(Me!MyComboBox)))、バインドされたデータフィールドがゼロ長文字列を許可しないと仮定します。アクセステーブルデザイナー、残念ながら)。 –