VBA(Visual Basic for Applications)はExcelなどのOfficeアプリケーションを操作するための強力なツールです。
プログラミングを始めたばかりの方でも、VBAを使えば作業を自動化でき、業務の効率がぐっとアップします。
そんなVBAでプログラムを書くときに欠かせないのが「コメントアウト」の使い方です。
コメントは、コードの説明を書いたり、後で修正したい箇所を残したり、エラーを避けるために一時的にコードを無効にするために使われます。
本記事では、VBAにおけるコメントアウトの基本から、複数行のコメントの方法、ショートカットや効率的な記述方法まで丁寧に解説していきます。
初心者の方も安心して学べるよう、画像を使わずともわかる言葉で解説していきますので、ぜひ最後までご覧ください。
コメントアウトとは、コードの中で処理されない行や文を指定することを言います。
プログラミングでは、説明やメモを残すためにコメントを使います。VBAでは「シングルクォーテーション(’)」を使ってコメントを記述します。
たとえば、以下のように書きます。
'これはコメントです
MsgBox "こんにちは"
この例では、1行目の「これはコメントです」は無視され、2行目のメッセージボックスが表示されます。
コメントはコードの途中にも書くことができます。
MsgBox "こんにちは" 'ユーザーに挨拶を表示
このように、実際の処理には影響を与えず、コードの意味や使い方を補足できます。
VBAでは、コメントアウトするには行の先頭に '
(シングルクォーテーション)を付けるだけです。
' ここはコメントです
Dim message As String
message = "こんにちは"
' MsgBox message
上記のように、処理を一時的に無効化したいときや、テスト的にコードを止めたいときなどにコメントアウトが便利です。
複雑な処理や他人が読むことを想定したコードには、コメントをつけておくと理解が深まります。
' ユーザー名を入力させる
Dim userName As String
userName = InputBox("お名前を入力してください")
問題の箇所を切り分けるために、処理を無効化したいときに使います。
' ここはバグの原因になっている可能性あり
' MsgBox userName
後で再利用する予定のコードや注意事項を残すのにも便利です。
' この処理はバージョン2.0で有効にする
' Call AdvancedCalculation()
VBAには、1つの記号で複数行をコメントアウトする機能はありません。
ですが、以下の方法で効率的に複数行をコメントアウトできます。
'Dim a As Integer
'a = 10
'MsgBox a
これは地道ですが、基本的な方法です。
VBAのエディターには「編集ツールバー」があり、「コメントブロック」ボタンで複数行を一括コメントアウトできます。
複数行を選択して「コメントブロック」ボタンを押せば、すべての行に '
が付きます。
VBAエディターでは、便利なショートカットキーがあります。
Ctrl + Shift + C
Ctrl + Shift + X
※このショートカットは編集ツールバーが有効な状態でのみ使えます。
作業効率を上げたい方は、ぜひショートカットを覚えておきましょう。
コメントが多すぎると、逆に読みづらくなります。コードの意図が明確な場合、コメントは不要なこともあります。
' x に 1 を代入する ← 明らかなので不要
x = 1
コードを修正したのに、コメントが古いままだと混乱のもとになります。
コメントは「見えるメモ帳」です。将来の自分や他人が見てもわかるように、適切に使えば保守性の高いコードが書けます。
初心者のうちは「これはどういう意味だっけ?」と不安になることも多いですが、コメントを書いておくだけで安心してコードに戻ってこれます。
たとえば、マクロを複数人で運用するチームや、長期間運用するシステムでは、コメントがあるだけで運用コストがぐっと下がります。
VBAにおけるコメントアウトはとてもシンプルで、'
(シングルクォーテーション)を使うだけです。
ですが、その使い方には工夫があり、効率よく記述・解除することで、コード管理やデバッグが楽になります。
'
を使って行頭に記述すればコメントアウトコメントを上手に使うことで、あなたのVBAコードはもっと分かりやすく、使いやすくなります。
ぜひ今日から、コメントアウトを意識して使ってみてください!