一覧表

【VBA基本】変数の初期値一覧

変数は暗黙で、初期値が設定される

'■下記のように変数宣言時に初期値を設定すると宣言と同時に値を代入しました。
Dim flag as Boolean : flag = True                        'flagはTrueである
Dim ws as WorkSheet : Set ws = ThisWorkbook.ActiveSheet   'wsはThisWorkbook.ActiveSheet(ObjectなのでSetが必要)

'■しかし、下記のように初期値を設定しない場合は暗黙で初期値が設定されます。
Dim num as Long    'Long型なので0が初期値となる

変数の初期値一覧

データ型によって、初期値は異なります。下記の表を参考にしてください。

データ型名変数初期値
ブール型BooleanFALSE
バイト型Byte0
整数型Integer0
長整数型Long0
単精度浮動小数点型Single0
倍精度浮動小数点型Double0
通貨型Currency0
日付型Date1899/12/30 00:00:00
文字列型StringvbNullString
オブジェクト型ObjectNothing
バリアント型VariantEmpty

vbNullStringは値が 0 の文字列であり、""(空文字※長さが0の文字列)ではありません。
ただ通常は、あまり気にする必要はありません。

変数宣言時に初期値はセットするべき?

暗黙に初期値が設定されるのを生かすのか、明示的に変数宣言時に値を格納するのかどちらがいいのかは、
こちらのタグの記事と同様です。

場合による。これに尽きると考えます。

理由は、自分だけが確認するコードであれば、好きにすればよいし、
チームで動く場合はルールに沿うべきです。

プログラムは単純なものではありますが、人の手により読みやすい・読みにくいコードが生まれるため、
そのあたりの空気を読む力は必要だと考えます。

関連記事

【VBA基本】変数のデータ型一覧
.Valueは必要?不必要?省略しても良い?【ExcelVBA】
If flg Thenってどういう意味?Boolean型のフラグの判定条件【ExcelVBA】

 

コメント

タイトルとURLをコピーしました