• ベストアンサー

空白ならば vba エラーになる IsNull

If IsNull(Forms("フォーム").Cntrols("年度別").Value) = True Then End If このコードは何がおかしいですか? 実行時エラー2465になってしまいます。 コントロールが空白なら文字を入れて、空白じゃないなら mystr = Forms("フォーム").Cntrols("年度別").Value のようにして、コントロールの値を変数に格納したいのですが、 エラーになる原因がわかりません。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

>実行時エラー2465になってしまいます。 実行時エラー2465は「指定した式で参照されているフィールドが見つかりません。」エラーです。 つまり「NULLであるかどうか以前の問題」です。 因みに、フォーム上のコントロールがテキストボックスで、その中身が空欄かどうかを判定するには if 年度別="" then ~~~ end if と書かないといけません。 テキストボックス(などのコントロールのValue)は、空欄の場合「Nullにはならない」ので、IsNullの値は「常に偽」になり、正しく評価できません。

xexqhucfol
質問者

お礼

ありがとうございました。

その他の回答 (1)

  • masatsan
  • ベストアンサー率15% (179/1159)
回答No.1

Cntrols のスペルが間違っている

xexqhucfol
質問者

お礼

ありがとうございました。

関連するQ&A