【Excelマクロ】コメントを活用して、メンテナンスしやすいコードにする

コメントは“未来の自分”へのメッセージ

VBAでコードを書いていると、その場では理解していても、数週間後には「この処理、なんでこうなってたんだっけ?」と思い出せなくなることがあります。

また、他の人があなたのコードを引き継いだとき、「何をしているか」「なぜやっているか」がわからなければ、修正も不安になってしまいます。

そんなときに役立つのが、コメント(’から始まる説明文)です。

コメントを適切に書いておくことで、コードの保守性(メンテナンスがしやすい)が大きく向上します。

実装するメリット

  • 処理の意図が分かるようになる
  • 他の人や未来の自分がコードを読みやすくなる
  • エラー修正や仕様変更のときに修正する場所を見つけやすくなる

コメントの基本ルール

次に、読みやすく効果的なコメントを書くためのポイントを紹介します。

  • 必ず1つのマクロに1つ以上のコメントをつける
  • なぜその処理をしているのかを書く
  • 変数の用途や特殊な処理にはコメントを添える
  • 長くなりすぎない。1行〜2行で簡潔に書く

具体例1:何の処理か分かるように書く

改善前(コメントなし)

Range("A1").Value = WorksheetFunction.Sum(Range("B1:B10"))

改善後(コメントあり)

' B1〜B10の合計をA1セルに表示
Range("A1").Value = WorksheetFunction.Sum(Range("B1:B10"))

具体例2:「なぜこの処理が必要なのか」を書く

改善前(コメントなし)

Application.ScreenUpdating = False

改善後(コメントあり)

' 画面の遷移の停止
Application.ScreenUpdating = False

ただの設定変更にも「なぜそうしているか」の情報が加わるだけで、読み手の理解度が変わります。

具体例3:処理ブロックの区切りに使う

' ---------- データ抽出処理 ----------
' A列が空欄でない行だけを別シートにコピーする
For i = 2 To lastRow
    If Cells(i, 1).Value <> "" Then
        ' 処理内容...
    End If
Next i

ブロックの始まりを明示することで、コード全体の構造を把握しやすくなります

NGコメント例:意味が曖昧、長い、誤解を招く

' 設定
x = 1

' ここで処理をする
Call 処理A

コメントは“なんとなく”ではなく、未来の自分や読む人のために書きましょう。

まとめ

  • なぜこの処理を行っているのかをコメントに書く(理由を書く)
  • 見た人が安心できる説明を意識する
  • 目立つ区切り関数の役割の説明としても使える

特にVBAでは、利用者や未来の自分がコードを見る場面が多いため、「思いやりあるコメント」を意識して書いていきましょう。

コメントを活用することで、メンテナンスしやすいコードになります。

初めのうちは、「何をしているか」よりも「なぜしているか」を意識して、1行でもコメントを書いていく習慣をつけましょう。

コメント