• ベストアンサー

Emptyとしてるのに0が入る(アクセス)

フォーム上のコントロールに対して、 Sub あ() Form_フォーム1.Controls("cmb_年月").Value = Empty End Sub とすると、空白ではなく0がはいります。 cmb_年月には書式は何も設定していませんが、 値集合ソースに数値を設定しています。 だから、Value = Empty とすると0になるのでしょうか? Value = Nullにしたら空白になりました。

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

  • ベストアンサー
  • m3_maki
  • ベストアンサー率64% (296/460)
回答No.1

Access VBA のヘルプより ------------------------ Empty 値 バリアント型 (Variant) 変数に格納できる特殊な値の 1 つ。その変数が初期化されていないことを示し、VarType 0 で示されます。この値は、数値としては 0 と評価され、文字列としては長さ 0 ("") の文字列と評価されます。 ------------------------ よって、数値型のフィールドに Empty を代入する場合は 0 と評価されます。 Null、Empty、空文字列など、初心者が迷いやすいところですが こちらで、かなり丁寧に説明されています。 http://www.moug.net/tech/acvba/0050010.html

nmublytgawity
質問者

お礼

ありがとうございます。

関連するQ&A