この記事にたどり着いた皆様は、下記のような悩みを抱えているのではないでしょうか。
- VBA(Excelマクロ)でコメントアウトをする方法を探している
- コメントアウトを解除したい
- 範囲選択した複数行をまとめてコメントアウトしたい
- 一瞬でコメントアウトできるショートカットキーは無いの?
この記事を読むことで、下記のことがわかります。
- VBA(Excelマクロ)でコメントアウトをする方法・解除する方法がわかる
- 複数行をコメントアウトする方法がわかる
- コメントアウトを実行できるショートカットキーがわかる
- 良いコメントの書き方を学べる
※わかりやすさを重視しております。厳密には解釈が異なる場合がありますことをご了承ください。
-著者情報-
名前:Utatane
VBA(マクロ)歴:3年
Excel使用歴:15年以上
ひとこと:初心者だった当時に戻った気持ちになって解説いたします
VBA(Excelマクロ)でのコメントアウトのしかた
まずは「コメントアウト」とは何なのかについて見ていきましょう。
コメントアウトとは
コメントアウトは、プログラムとして実行されてしまわないように、コードや文章を無効化することを言います。
簡単に言うと「メモ書き」や「心の声」といったところでしょうか。
例えば下図を見てください。

私たちなら、コード(発言)なのかコメント(心の声)なのかがパッと見て判断できますが、
機械であるExcelは判断ができません。
心の声である部分も実行してエラーが出たり、予期せぬ結果になったりしてしまいます。

なので、「ここはコメント(メモ書き・心の声)ですよ~」とわかりやすく指示する必要があります。
それが「コメントアウト」です。
コメントアウトした部分はメモ書き(心の声)と判断され、実行されません。

コメントアウトには、主に以下のような2つの役割があります。
- 処理の説明を書く
- コードを無効化する
処理の説明を書くことで、他の人が見ても理解しやすくなるという利点があります。
また、一時的にコードを変更したりした場合、コメントアウトして元のコードを残しておくことで、元に戻しやすくなります。
コメントアウトの概要がわかったところでコメントアウトのしかたを見ていきましょう。
コメントアウトのしかた・解除方法
VBAでは、「’(シングルクォーテーション)」を付けることで、
その行の以降の文字が緑色になり、コメントアウトされます。

コメントアウトした部分はコードとして実行されず、プログラムに影響しません。
「’」を削除することでコメントアウトは解除され、コードとして実行されます。

しかしながら、たくさんの行をコメントアウトしたり解除したりしたい場合、
いちいち「’」を入力したり削除したりするのは大変です。
そんなときは、複数行をまとめてコメントアウトすることもできます。
複数行をまとめてコメントアウト・解除
複数行のコメントアウトは、編集バーの「コメントブロック」から行えます。

編集バーが表示されていない場合は、
上部メニューの「表示」→「ツールバー」→「編集」をクリックしてください。
編集バーが表示されます。

コメントアウトしたい行を範囲選択したら、「編集バー」の「コメントブロック」をクリックしましょう。

複数行をまとめてコメントアウトすることができます。
複数行のコメントアウトを一括で解除することもできます。
範囲選択→「編集バー」→「非コメントブロック」をクリックしてください。

コメントアウトを実行するショートカットキー
残念ながら、直接コメントアウトを実行したり解除したりするショートカットキーは、現在のところ存在しません。
しかしながら、前項で解説した「コメントブロック」や「非コメントブロック」を実行するショートカットキーを設定することで、間接的にコメントアウトを実行することができます。
手順は以下のとおりです。
- コメントブロックボタンをツールバーに追加
- コマンドブロックボタンの編集(ショートカットキー設定)
少し長いですが、一度設定してしまえば後が楽になりますので、がんばって設定しましょう。
まずはコマンドブロックボタンをツールバーに追加する作業です。
上部メニューから「表示」→「ツールバー」→「ユーザー設定」をクリックしてください。

ユーザー設定画面が開きますので、「コマンド」タブを選択し、左側「分類」の「編集」をクリックします。

右側中ほどの「コメントブロック」を選択したら、上部のツールバーへドラッグ&ドロップします。

「コメントブロック」ボタンがツールバーに追加されました。

続けてコマンドブロックボタンの編集をしましょう。
ツールバーの「コメントブロック」ボタンをクリックすると、「選択したボタンの編集」が有効になりますのでクリックします。

名前を変更します。
現在「コメントブロック」という名前になっているかと思いますが、これを削除します。

空いた空欄にショートカットキーを書き込みします。
今回は「(&s)」という名前にしました。

これは「Altキー+Sキー」のショートカットを設定したことになります。
しかし、これだけではショートカットキーでコメントブロックを実行できません。
最後の仕上げに、「イメージとテキストを表示」をクリックしてください。

ツールバーのコメントブロックボタンの横に「s」という表示が追加されたら完了です。
(「s」は設定したショートカットキーによって異なります)

では、コメントアウトしたい行を選択して、ショートカットキー(Alt+S)を実行してみましょう。

無事コメントアウトが実行できました。
同様にコメントアウトの解除(非コメントブロック)も設定しましょう。
ショートカットキーは「Alt+G」に対応した「(&g)」などがおすすめです。

ショートカットキーは機能が重複していなければその他のキーでも大丈夫です。
押しやすさなどを考慮して決めてみてください。
しかしながら、設定できるのは「Alt+○○」キーのみです。
「Ctrl」や「Shift」を使ったショートカットキーは設定できません。
良いコメント・悪いコメント
プログラムの説明をコメントにする場合、あなたはどのように書きますか?
自分が見返すだけなら簡略なコメントでいいと思いますが、他人に見られる場合はどうでしょう。
逆に言うと、他人の作ったマクロをあなたが見た場合、どのようなコメントだとわかりやすいかというところです。
正解はもちろんひとつではありませんが、
「なぜこの処理を行っているのか」「どういう理由でこのコードが必要なのか」を明記するのがベストです。
ただ単に、「iに1を代入」というだけではなく、「○○のカウント用として変数iを作成」と記述する癖をつけましょう。
最後に
VBA(Excelマクロ)のコメントアウトについて解説いたしました。
当ブログでは、VBAマクロやPythonなど、時間を生み出すプログラミング術を公開しております。
この記事がわかりやすいと感じた方は、他の記事も読んでいってください。
最後までお読みいただき、ありがとうございました。がんばってください!