GoGoマクロ
エクセル仕事の自動化が誰でもできる本
本日は、「正しいコメントの書き方」についてちょっとお話してみたい思います。 たとえばですが、英文でお決まりの This is a pen. これに、日本語の説明を付けなさいと言われた場合に、 This is a pen. 'これはペンです。 と書くだろう人が多いと思います。 これ、VBAの場合で言うと、 Range("B1").Select 'B1のセルを選択する。 だったり、 For i = 1 To 100 'ループ処理を100回繰り返す。 だったりします。中には、 Next i '次のループ処理へ といったコメントに書いてしまう人もあるかと思います。 まぁ、他人が英文やプログラムのコメントに This is a pen. 'これはペンです。 Range("B1").Select 'B1のセルを選択する。 For i = 1 To 100 'ループ処理を100回繰り返す。 Next i '次のループ処理へ この様に書いているのを見たら、これらの説明文が自分にとっては無意味であるだろうことには、すぐに気づくだろうと思うわけです。 「This is a pen.」この意味が「これはペンです。」 だなんて、わざわざ言われなくても、英語の勉強を始めたばかりの中学生にだってわかりますから。。 「Range("B1").Select」が「B1のセルを選択する。」 これにしても、多少マクロの事がわかる人であれば、これは初心者だって誰だってわかっています。(ちがいますか?笑) だから、 プログラムのコメントに書くべき説明文とは、そうではないんです。 見れば誰でもわかる(当たり前の)説明をわざわざ書き込んでも意味がないわけです。時間のムダです。それに時間費やしてしまってる人が、大変多いです。
では、 本当に書くべき意味のある説明文とは何なのか? This is a pen. この説明文として書くべきは、「これがどのようなペンなのか?」ということです。 たとえばですが、 「これは、去年亡くなった父が大学入学時の祝いにプレゼントしてくれて、それから15年間ずっと使い続けて来た大切な大切な、私のペンです。」 とかですね。 無意味な誰にでもわかる事(英文やVBAのただの翻訳)を書くのではなく、 「これを書いた自分にしかわからない事。」 ~~~~~~~~~~~~~~~~~~~~ それを書くのです。書き残すのです。 それが、プログラムのコメント文というものです。その辺、書けていますか? 但しですが、 コメント文も(マクロと同様に)、最初からそうそううまく書ける人なんか居ませんですから、これも練習(書き慣れる!)あるのみです。 筆不精ではいつまで経ってもよいコメント文書けるようにはならないですから、それは日本語の文章書くのと一緒ですね。 また、書き方のコツも何も知らずに闇雲にただ書いたって、上達は望めませんですから、正しいコツを掴んでひたすら書きまくる(練習する)ということが大切です。 で、 もう一つ、プログラムのコメント文には重要なポイントがあります。 「書き込みすると自分でも納得です。言葉にするのが大事なのかも・・・」 そうです!言葉にすると(コメントを書くと)、自分が書いたプログラムを自分自身で再認識することができるわけですね。 だから、コメント文というのは「ただ説明残す」という意味合いだけのものではなく、 自分自身への確認も兼ねている。そうしたものでもありますから、特に、初心者の皆さんにはそれをぜひ意識して、忘れない内にコメント文、どんどん書いて、書き残して行っていただきたい思います。