【Excelマクロ】見やすい工夫

Excelマクロ

見やすいコードを書くための工夫:コメントとインデントの活用

VBAでマクロを作成すると、コードが長くなるほど見にくくなります。

最初はスムーズに動作していても、後から修正や追加をしようとしたときに、どこを直せばいいのかわからなくなることがよくあります。

そこで大切なのが、「見やすいコードを書く」 という意識です。

マクロは1回作って終わりではなく、将来的に修正・追加が発生する可能性が高い ため、最初から整理されたコードを書いておくことで、後の作業がスムーズになります。

見やすいコードにするために、次の2つのポイント を意識しましょう。

  1. コメントを書く
  2. インデントを入れる

1. コメントを書く(コードの説明を残す)

コードを書くだけでも動作はしますが、何のための処理なのかを明記しておくと、後から見たときに理解しやすくなります。

コメントの書き方

VBAでは、「'(シングルクォーテーション)」を使うと、その行はマクロの処理対象外になります。

コメントの例:

' Sheet1からSheet2にデータをコピーする
Sheets("Sheet1").Cells(1,1).Copy
Sheets("Sheet2").Cells(1,1).Select
ActiveSheet.Paste

ポイント

・「’」をつけた行はコードとして実行されない
・何をしているのか一目でわかるように記載する

コメントがない場合のデメリット

Sheets("Sheet1").Cells(1,1).Copy
Sheets("Sheet2").Cells(1,1).Select
ActiveSheet.Paste

今回はシンプルなコードではありますが、さらに複雑になると、これだけ見ると、「何をやっているコードなのか」 が分かりにくく、後で修正するときに手間がかかります。

2. インデントを入れる(コードを見やすく整える)

コードが複雑になってくると、どこまでが条件の中なのか、繰り返しの範囲なのかが分かりづらくなる ことがあります。

そこで、「インデント(字下げ)」を使ってコードを整理 すると、視覚的に分かりやすくなります。

インデントがない場合

For i = 2 to a_ls
If Cells(i,1).Value = "○" Then
Cells(i,2).Font.Color = RGB(255,0,0)
Cells(i,3).Interior.Color = RGB(0,255,0)
End If
Next

このままだと、「どこからどこまでがFor文やIf文の範囲なのか」 が分かりづらいです。

インデントを入れた場合

For i = 2 to a_ls
    If Cells(i,1).Value = "○" Then
        Cells(i,2).Font.Color = RGB(255,0,0)
        Cells(i,3).Interior.Color = RGB(0,255,0)
    End If
Next

このように 「Tabキー」 を使って適切にインデントを入れることで、

「For ~ Next」の範囲が分かりやすい
「If ~ End If」の範囲が分かりやすい

となり、コードが見やすくなります。

まとめ

マクロのコードが長くなると、後で修正・追加をするときに時間がかかります。

その時間を短縮するために、「コメント」と「インデント」 を意識して使うと、作業効率が向上します。

工夫効果
コメントを書くコードの目的が一目でわかる。後から見ても理解しやすい
インデントを入れるコードの構造が分かりやすくなる。処理の範囲が明確になる

小さな工夫ではありますが、するのとしないのでは作業効率が大きく変わります!

ぜひ、見やすいコードを意識してマクロを作成していきましょう!

コメント