Excel VBA(マクロ)で業務改善
作成スキルを修得しましょう
パチンコ業界に特化した内容です

「インデント」と「コメント」について

VBAのコードを書く時可読性を高くする必要があります。
VBAにおける可読性とは「読みやすさ」「処理の流れの理解しやすさ」です。

Excel VBAのプログラムを組めば、自動的に処理を行ってくれますがそのVBAの保守を行うのは人間のため可読性を良くすることは重要なことです。

インデント

インデントは「字下げ」とも言います。
目的はコードを書く過程で、ステートメントの始まりと終わりを分かり易くするためのものです。

以下のコードを見比べて下さい。コードはどちらも中身は同じです。

上のコードはインデントを正しく使っています。
下のコードはインデントを使用していません。

上のコードでは「For~Nextステートメント」の For と Next がセットですが、開始する位置が揃っています。
その中に「Ifステートメント」があり If と Else と End If がセットですが、開始する位置が揃っています。
「Ifステートメント」の中に実際にセルを操作する処理がありますが、開始する位置が揃っています。


インデントが行われていなくてもエラーは発生せずマクロは実行されます。
しかし、繰り返しますが変更や修正の保守を行うのは人間です。
このように開始位置を揃えることで人間が何を行っているのか理解しやすくなります。
インデントは必ず使って下さい。

インデントの設定方法
インデントを設定する時は[スペース]キーは使用しません。
[Tab]キーを押すと半角スペース4文字分カーソルが移動します。
不要な場合は[Shift]+[Tab]で左側に移動します。
文字を選択した状態でも移動できます。

コメント

コメントはコードの中に書くメモです。
次の図では
 ’玉単価を算出
 ’玉粗利を算出
がコメントの部分です。

VBAでは ‘(シングルクォーテーション)を頭につけるとその行は、コードと認識されずメモになります。文字の色も緑色になります。

下図のツールバーの[コメントブロック] [非コメントブロック] を使うことで、選択した行を一気にコメント行にすることもできます。

※初期の設定では[コメントブロック] のツールバーは表示されていません。
メニューバーから「表示→ツールバー→編集」を選択すると表示されます。

コメントは何をここで行っているのかメモしておけば後々コードの修正や変更を行うときに内容を早く把握できスムーズに作業を行うことができます。
別の人が作成したコードを修正する場合、このコメントがあるととても助かります。
実務的なコードになると上図のようにシンプルでは無く行数も増えたり、プログラム実行中に別のプログラムに移動したりします。
また 特定店舗だけ、特定機種だけ、特定貸料金だけ といったイレギュラーな処理を追加必要になりあります。
コメントがないプログラムを保守する場合、一から作成する以上の時間が掛かる場合があります。
また、自分自身で作成を行ったコードであっても数か月すると記憶が曖昧になり「俺は何でこんな事をしているんだ」となります。
そのような時に、
‘CR○□ はスタート賞球がゼロのため同じタイプ集計を行った場合ベースやBYの数値がおかしくなるため、この機種は除外する処理を行う
高橋部長の指示で2018/5/10追加

などとコメントでがあるととても助かります。

将来の後任者のため、自分自身のためにもコメントを書くことをお勧めします。