「自分で書いたマクロなのに、今見たらサッパリ分からない……」
これはVBA初心者が必ずといっていいほど直面する悩みです。
マクロが動き始めると、嬉しくてどんどんコードを書き足してしまいがちです。
ちょっと待ってください。
コードを書きっぱなしにするのは、整理整頓されていない部屋で作業を続けるようなものです。
今回は、プロの書き手に一歩近づくための2つの技術
「インデント(字下げ)」と「コメント(メモ)」を伝授します。
これを知っているだけで、あなたのマクロは劇的に読みやすくなり、エラーも一瞬で見つけられるようになりますよ!

インデントは「身代わりロボット」の段落分け
文章を書くときに「段落」を作るように、VBAでもコードに段差(スペース)を作ります。
これを「インデント」と呼びます。
たとえば、次の2つのコードを見てください。中身は全く同じです。
A:インデントなし(読みづらい)
Sub Sample()
Range("A1").Value = "テスト"
Range("A1").Interior.Color = vbYellow
End Sub
B:インデントあり(スッキリ!)
Sub Sample()
Range("A1").Value = "テスト"
Range("A1").Interior.Color = vbYellow
End Sub
どちらが読みやすいかは一目瞭然ですよね?
Sub と End Sub という「始まり」と「終わり」の枠の中に、
「Tabキー」を1回押して一段下げる。
これだけで、どこからどこまでが一つの塊なのかがパッと見て分かるようになります。

インテンドでVBAの役割・ブロックごと
に分けないと読解困難になるよ!
今後学習する条件分岐や繰り返し処理に利用すると見やすくなります。
コメントは「未来の自分」への手紙
VBAのコードの中に、実行には関係ない「日本語のメモ」を残すことができます。
これが「コメント」です。
やり方はとても簡単。シングルクォーテーション( ‘ )を文の頭に付けるだけです。

' A1セルに名前を入れる(ここがコメント!)
Range("A1").Value = "山田太郎"
シングルクォーテーションを打つと、その行の文字が緑色に変わります。
これが「マクロとしては無視するよ」という合図です。

行数の多いマクロや複雑な仕組みを用意したら
コメントをしっかり残そう!
数日後の自分、他のメンテナンスする人が助かるよ。

手作業の実況中継をそのまま「コメント」にしよう!
「何をコメントに書けばいいの?」と迷ったら
第2回で学んだ「手作業の実況中継」をそのまま書き込みましょう。
- まずコメントで手順を書く:
' 1. A1セルの値を取得する' 2. B2セルにコピーする' 3. A1セルの色を消す - その下にコードを書く: 手順を先に書くことで、迷わずにコードを打ち込めます。
「設計図」の作り方です。

手作業の実況中継を先に記入しておくと
マクロ作成前の設計図にできるよ!
当然、最初のうちは設計図を紙に書いても良いんだ。
VBEに直接書き込めば、少し効率がいいよね。
読みやすいコードは「エラー」を寄せ付けない
なぜ読みやすさにこだわるのか。
それは「見た目が汚いコードは、エラーが隠れていても気づけないから」です。
- インデントが揃っていれば、
End Subを書き忘れた時にすぐ気づけます。 - コメントがあれば、本来やるべき作業を飛ばしていないかチェックできます。
実務でマクロを使うなら、「動けばいい」ではなく
「誰が見ても(未来の自分や他人)意味がわかる」ように書く。
これが、挫折せずにマクロを使いこなす最大のコツです。

お節介なくらいにメモは残そう!
正しくメモが残っていなくて困ったんだ。
メンテナンスのときに特殊な仕掛けに気付かずに、余計な修正をしてしまった。
そしたら当然マクロは動かなくなり、修正するのに時間かかったなぁ。
今回のクエストを終えて
- インデント(Tabキー)でコードの段落を整える!
- シングルクォーテーション( ‘ )で日本語のメモを残す!
- 「手作業の実況中継」をそのままコメントにする!
- 見た目を整えることは、エラーを防ぐ最強の防御である!
これで、プロのエンジニアと同じ「美しいコード」の書き方が身につきました。
次回は、いよいよマクロに「一時的な記憶」をさせる技術「変数とデータ型」に突入します。
「変数=箱」というイメージを使って、最小限の知識でマクロをパワーアップさせる方法をお伝えします!




コメント