コメントは、コードの中に説明を入れたいときに使う。また、コードの一部を実行させないようにする目的でも使用する。
このページではVBAのコメントの書き方について説明する。
シングルクォーテーションを使う
行頭にシングルクォーテーション「'」を付けると、その行はコメント行になる。
'コメント1
Sub Test1()
Dim str As String
'コメント2
str = "Excel VBA"
MsgBox str
End Sub
また、行の途中にシングルクォーテーションを書いた場合も、行の途中からコメントとして扱われる。
Sub Test()
Dim str As String 'コメント1
str = "Excel VBA"
MsgBox str
End Sub 'コメント2
シングルクォーテーションを連続で記述した場合もコメントとして認識される。
'''コメント1
Sub Test()
Dim str As String '''コメント2
str = "Excel VBA"
MsgBox str
End Sub
Remステートメントを使う
アルファベット3文字「Rem」を行頭に書くと、その行はコメント行になる。
Rem コメント1
Sub Test1()
Dim str As String
str = "Excel VBA"
Rem コメント2
MsgBox str
End Sub
行の途中から「Rem」と書いてもコメントとして扱われない。この点はシングルクォーテーションによるコメントとは異なる。次のプロシージャを実行するとコンパイルエラーが発生する。
Sub Test()
Dim str As String Rem コメント1
str = "Excel VBA"
MsgBox str
End Sub
なお、Remは Remark(=意見、コメント)の略だ。
複数行をまとめてコメント化するには?
Excel VBAには、複数行をまとめてコメント化する方法はない。よって、シングルクォーテーション(またはRem)を使って、ひとつひとつの行をコメントにする必要がある。
'コメント1
'コメント2
'コメント3
'コメント4
たとえばC#というプログラミング言語なら、/* */を使って複数行をコメント化することができる。
/*
コメント1
コメント2
コメント3
コメント4
*/
しかし、この書き方はExcel VBAには用意されていないことを覚えておこう。
コメントを書けない場所
コメントを書くことができない場所がある。それは行継続文字「 _」の後ろだ。次のプロシージャを実行するとコンパイルエラーが発生する。
Sub Test()
Dim str As String
str = "Excel" & _ 'ここにコメントは不可
"VBA" & _
"Basic"
MsgBox str
End Sub
コメント