今回は、「マクロ作成時に気をつけたいこと」についてです。
何となく作りたいものは決まっているが、どう作ったらいいか悩んでいる方にオススメの記事となります。
誰でも利用できるシンプルな仕組みにする
実務において、エクセルファイルはチームで利用するものが多いです。
なので、作成者しか理解・処理できないような仕組みを作成してしまうと、価値のないマクロになってしまいます。
つまり、マクロ作成時には誰でも理解・処理できるシンプルなものを作成する必要があります。
例えば、以下のような方法があります。
- VBAを処理内容ごとに注意書きを残す
- ボタンをクリックするだけで、必要な処理全てを完了させるマクロを用意
利用する方・VBAコードを読む方が分かりやすいようにする工夫を心がけましょう。
今後マクロを改良する可能性があるため応用しやすい形にする
マクロは一度作成して、それっきり一切触れないとは限りません。
一度作成したマクロは、下記のような利用方法があります。
- さらにマクロを改良するためにコードを書き加える
- 当マクロのコードを他の業務にも利用するため複製
以上のような目的でコードを再利用することがあります。
そのため、極端に言えば、「シンプルで簡単なコード」「1つのマクロに1つの機能を搭載し、組み合わせる」意識を持って作成すると、新たなものを作成する際に楽をできます。
マクロが不具合を起こしても機能させられるようにする
マクロに頼りすぎてしまうと、アクシデントに対応できないメンバーが出てきてしまいます。
そこで不測の事態を想定した工夫が必要です。
その工夫とは、「作業目的さえ明確であれば手作業でも簡単に完結できる仕組み」を用意することです。
以下のような例を参考にしてください。
- 目的:2025年7月の各フルーツの販売実績を見たい
- シートA:2025年の販売実績全てが載っている
- マクロ:2025年7月の実績のみをシートAからシートBへ転記
- シートB:マクロで転記されたデータを関数でカウント
このような状況でマクロが動かなくなった場合、マクロで行っている処理を手作業で行う必要があります。
ここで言えば、「シートAにてオートフィルターを利用して2025年7月のデータをコピーした上で、シートBへ貼付」すれば、マクロと同等の処理をしたことになります。
以上のように、マクロで行う処理・目的さえ分かれば、比較的シンプルな手作業で代替可能であるべきです。
誰が利用しても仕組みを壊されないような工夫をする
実務において、他のチームメンバーが利用することを想定してマクロ作成をする必要があることは既に述べています。
さらにハッキリと言えば、他のチームメンバーは「機械音痴」「理解力がない」「処理速度が遅い」「ミスばかり」のような人を想定すると良いでしょう。
マクロの仕組み・作業目的などは実務をする人間としては理解すべきことです。
しかし、上記のような人間には、理解を求めても無駄です。とにかく作業を完結させられるようにしてあげることを優先して良いでしょう。
そこで必要なことは、「ユーザーフォーム等を利用して入力規制した状態で必要事項の入力すればマクロが作動する仕組み」です。
なぜなら、マニュアルを用意して入力のルールなどを伝えてもミスが起こる可能性があり、そもそもの仕組みで余計な行動をさせない為です。
このような仕組みを用意しておかないと、知らぬ間に不適切なデータ入力をされたり、数式削除をされたり、面倒な事態を招いてしまうので注意してください。
さらに数式の削除を防ぐための工夫として、数式ありの行や列を非表示・色をつけるなどすると良いでしょう。
まとめ
以上のようにエクセルで仕組み化する際に、注意点について見てきました。
- 誰にでも分かるシンプルさ
- 誰にもミスをさせない仕組み
最低限これだけを意識していれば、作業の効率化へ一歩前進したと言えるでしょう。
コメント