【VBA】コメントと構造化の工夫|可読性・保守性を高める整理術

プロシージャの整理術 ― 可読性と保守性を高める設計

VBAでは「書けること」と「読めること」は別物です。
実務では、自分以外の人が読んでも理解できるコードが求められます。そのために必要なのが「コメントの付け方」と「コード構造の整え方」です。

この記事では、VBAで可読性を高めるために必須となる「コメント」と「構造化」のコツを解説します。


1. コメントは“誰が読んでもわかる”を意識する

コメントは、コードの意図・背景・理由を書くものであり、単なる動作説明ではありません。

● コメントの基本方針

  • “書いた本人以外”が読んでも理解できること
  • コードを見ただけではわからない情報を書く
  • 処理の理由や前提条件を書く

■ 悪い例(動作だけ書いている)

'セルに値を入れる
Range("A1").Value = 10

これはコードを見ればわかります。

■ 良い例(理由・意図・背景を書く)

'レポート生成時の初期値として数量を10に設定
Range("A1").Value = 10

「なぜ 10 を入れるのか」がわかるため、保守が圧倒的に楽になります。


2. プロシージャの冒頭に“処理概要”を書く

プロシージャの最初に、以下のようなコメントを入れると全体像が把握しやすくなります。

● 書くべき内容

  • 目的(何のためのプロシージャか)
  • 入力(使用する引数など)
  • 出力(関数の戻り値、変更するセル範囲など)
  • 注意点・前提条件

■ 実例

'【概要】月次レポートを生成するメイン処理
'【入力】特になし(処理内でデータを取得)
'【出力】レポートシートに結果を出力
'【注意】売上シートが最新状態であることが前提
Sub CreateMonthlyReport()

実務ではこのスタイルが非常に役立ちます。


3. セクション分けで“処理のまとまり”を作る

コードが長くなるほど、処理がどこで切り替わるか見えにくくなります。
そのため、大きな流れごとにコメントで区切るのがおすすめです。

■ セクション分け例

'==== 1. 初期設定 ==========================================
'シート・変数の準備
Set ws = Worksheets("売上")

'==== 2. データ抽出 =========================================
'売上データをフィルタリングして必要行を取得

'==== 3. 集計処理 ===========================================
'合計・平均などを計算

'==== 4. 出力処理 ===========================================
'レポートシートへ集計結果を書き込み

ポイント:

  • 長いプロシージャほど効果が大きい
  • チーム開発ではほぼ必須レベルの読みやすさ向上

4. 変数・定数にも“説明コメント”を添える

特に意図が伝わりにくい定数や変数には、簡易コメントを付けます。

■ 良い例

Const TAX_RATE As Double = 0.1 '消費税率(将来変更の可能性あり)

■ 悪い例(説明なし)

Const TAX_RATE As Double = 0.1

10%の税率なのは見ればわかりますが、「なぜ定数化したのか」「何のためか」が伝わりません。


5. コメントは“書きすぎてもダメ”という注意点

コメントが多すぎると、逆に可読性が下がることがあります。

● 避けるべきコメント

  • コードの動作そのものを説明するだけのコメント
  • 1行ごとにコメントを付ける
  • コードを変更したのにコメントを変え忘れる

● ベストは「適度に、必要なところだけ」

「構造化+要所のコメント」
これが最も読みやすく保守しやすいコードになります。


6. コメントとコードレイアウトをセットで整える

読みやすさはコメントだけでなく 空行 や インデント によっても決まります。

● レイアウトの基本

  • 処理の区切りに空行を入れる
  • ネスト(IfやFor)の中はインデントを下げる
  • 引数が多いときは改行して並べる

例:

If isValid Then
    '条件を満たす場合のみ実行
    Call ExportData
End If

インデントがあるだけで意図が格段に伝わります。


7. まとめ

VBAのコード品質は コメント・構造化・レイアウト の3本柱で決まります。

✔ コメントのポイント

  • 理由・背景を書く
  • プロシージャ冒頭に概要を書く
  • セクションで処理を区切る
  • 必要な変数に説明を付ける

✔ 過剰なコメントは逆効果

  • 説明しすぎず、意図が必要なところだけ書く

実務では、コメントが丁寧なコードほど引き継ぎ、改修、再利用がスムーズになります。
「誰が読んでもわかるコード」を意識して、日々の開発に役立ててください。

コメント

タイトルとURLをコピーしました