Excel業務改善の相談を受けると、
最初から「マクロを書いてほしい」と言われることがよくあります
ただ、私は一旦考えるようにしています
本当にマクロでやるレベルなのかと。
マクロが嫌われる理由
マクロ自体が悪いわけではありません
問題は、運用ハードルが一気に跳ね上がる点です
中身が見えにくい。修正できる人が限られる
結果として、
壊れたら誰も直せないExcelが生まれます
関数でできることは、思っているより多い
最近のExcel関数は非常に強力です
XLOOKUP
FILTER
SORT
UNIQUE
LET / LAMBDA
これらを組み合わせるだけで、かなりの業務は自動化できます。しかも、
誰でも読める
修正しやすい
壊れにくい
なぜマクロは「最終手段」なのか
関数は「データ変換」ですが、マクロは「プログラム」です
業務の大半は、実はプログラムを書くほど複雑ではないケースが多いです
それでもマクロを使うべきケース
もちろん、マクロが必要な場面もあります
外部ファイル操作
複雑な繰り返し処理
UI操作の自動化
関数では表現できない業務フロー
この場合も、関数で土台を作ってからマクロを書くのがポイントです
まとめ
1 まず関数で限界まで考える
2 マクロは最後の切り札
3「誰が保守するか」を常に意識する
Excelは個人ツールではなく、チームで使うシステムです。
マクロを書く前に、
「本当に必要か?」を一度問い直すだけで、
未来のトラブルはかなり減ります!