VBAでコメントする
In this Article
この記事では、VBAエディタでコードの1行または複数のブロックにコメントを付ける方法を説明します。代わりに、VBAを使用してExcelのセルコメントで対話する方法について学びたい場合は、その記事をお読みください。
VBA 行のコメント
Excel VBAでは、コードの行をコメント化する方法がいくつかあります。
- シングルクォーテーション(‘)
- ツールバーのコメントブロックボタン
- Remキーワードの追加
最も簡単な方法は、行頭にシングルクォーテーションを付けることです。
'Sheet1.Range("A1").Value = "Test"
VBAでは、コメントは緑色のテキストで表示されます。
この例でわかるように、プロシージャの最初の行の先頭にシングルクォーテーションを付けて、コメントしています。行頭にシングルクォーテーションを付けると、その行全体がコメント化され、コードの実行時にスキップされます。 また、行のどこかにシングルクォーテーションを付ければ、コードの一部をコメント化することができます。 この場合、シングルクォーテーションの後のコードはスキップされます。
Sheet1.Range("A1").Value = "Test" '部分行コメント入力の例
今度は、行の一部だけをコメント化しました。これは、インラインコメントを記述するのに適した方法です。 コード内の行にコメントを付ける2つ目の方法は、ツールバーにあるVBA標準のコメント用ボタンを使用する方法です。このボタンを表示するためには、ボタンを追加する必要があります。([表示]-[ツールバー ]-[編集])これで、ツールバーに2つのボタンが表示されるようになりました。コメントブロックと 非コメントブロックです。
コードの行を選択して、いずれかのボタンをクリックするだけです。これで、行全体がコメント/アンコメントされます。 この方法では、コードの行末にコメントを追加することはできませんので、ご注意ください。 また、 Remというキーワードを使うこともできます。行をコメント化するには、このキーワードを行頭に置く必要があります。
Rem Sheet1.Range("A1").Value = "Test"
コメントボタンと同様に、Remキーワードはコードの行全体をコメント化することができ、行頭にのみ置くことができます。
VBA ブロック全体のコメント
1行のコメントとは別に、複数の行、つまりコードのブロックをコメントする必要があることもよくあります。これを行うには、1行のコメントに使用したのと同じように、ツールバーの標準ボタン「コメントブロック」を使用します。コメントしたい行をすべて選択し、ボタンをクリックします。
Private Sub CommentEntireBlock()
' Sheet1.Range("A1").Value = "Test"
' If Sheet1.Range("A1") = "Test" Then
' MsgBox "A1セルの値: Test"
' End If
End Sub
するとコードのブロック全体がコメント化されます。 同様に、ツールバーの「非コメントブロック」ボタンをクリックすれば、ブロックのコメントを解除することができます。
Private Sub CommentEntireBlock()
Sheet1.Range("A1").Value="Test"
If Sheet1.Range("A1") = "Test" Then
MsgBox "A1セルの値: Test"
End If
End Sub
VBAでコメントするためのキーボードショートカット
コメント入力のためのキーボードショートカットを有効にするには、以下のようにします。
- ツールバーの空いている場所のどこかで右クリックします。
- [ユーザー設定]オプションを選択し、[コマンド]タブの[分類]から[編集]を選択します。
- [コマンド]で[コメントブロック]を見つけ、ツールバーの既存のアイコンの横にドラッグ&ドロップします。
- これで、ツールバーに新しく追加されたボタンが表示されます。
- [選択したボタンの編集]をクリックし、[イメージとテキストを表示]オプションをチェックします。
- [選択したボタンの編集]をもう一度クリックし、[名前]欄の名前の先頭に「&C」または「(&C)」を追加します。
これで、1行または1ブロックのコードを選択し、キーボードのAlt+Cキーを押してコメントできるようになりました。
同様のオプションをコードのアンコメント(非コメントブロック)にも適用することが出来ます。&Cの代わりに&Uを使えば、コメント解除のショートカットをALT+Uに設定できます。