効率化はなりふり構わず何でもあり!
Excelと関数・VBA・Pythonの三つ巴
「何でもかまわん(Anything goes)」ってなことを
ファイヤアーベントも言ってましたよね(知らんけど)。
どんぐり
三つ巴 効率化は見逃せない
「効率的に…」や「無駄なことをせず…」というセリフを聞くと、
息が詰まる印象があるかもしれません(笑)。
ちょっとした処理にまで口を挟まれたくない気持ちがあります。
反面、ちょっとした処理といっても、
- 積み重ねると膨大な量になる
- いつのまにか状況が改善することはない
といった経験があれば、効率化の見直しが必要になります。
コストや労力と折り合いをつけつつ効率化を進めることが一般的です。
そうした過程で、ちょっと気になるのは優先順位です。
効率化するための選択肢が並んでいる場合、
- どの選択肢を優先すべきか?
と考えるはずです。
たとえば、Excelでデータを転記する場合。
三つ巴 関数・VBA・Python
Excelでデータをを転記する場合、
- セルをコピーして貼り付ける
といった処理は日常茶飯事です。
シンプルな処理ですが、範囲選択やコピー・貼り付けを
- マウス操作のみか?
- キーボード操作のみか?
- 両者をミックスするか?
といった選択が可能です。
処理するデータの量が増えれば、上記に加えて
- 関数
- VBA
- Python
といった選択を加えることも有効になります。
■関数
たとえば、下記にようにA列にC列のデータを転記したい場合。
「VSTACK」関数の利用が可能です。
「Vertical(垂直)」方向にデータをつなげることができます。
上記は極少数のデータですが、大量のデータがあった場合、
シンプルな関数だけで処理できれば効率的です。
■VBA
Excelでの処理を効率化する点で無視できません。
特別な環境構築は不要で、追加コストもありません。
プログラミングが必要ということでハードルが上がりますが、
処理を効率化できる可能性が広がります。
■Python
VBAがあるんだから、不要でしょ?と目線をそらしたい
という気分かもしれません(笑)。
上記の転記のケースのようなシンプルな処理ならともかく、
Excelだけで処理が完結しなくなるケースもあります。
一方で、Pythonで扱える処理はExcelにとどまりません。
汎用性のあるプログラミング言語を利用することで、
効率化できる処理の対象が広がります。
三つ巴 なりふり構わず何でもあり
今回とりあげた程度のExcelでの転記処理であれば、
関数もVBAもPythonも不要です(笑)。
マウスやキーボード操作で処理してしまえばいいわけです。
とはいえ、そうした日常的な処理だけで済まないこともあります。
処理対象に相応しい選択が必要になります。
どの選択肢を優先するか?、といった問題が浮上します。
しっかり検討すべきかもしれませんが、
- 何でもありで構わない!
といった合理的な割り切りも魅力です。
「VSTACK」関数は魅力ですが、
- 2022年より使えるようになった関数であり、
- VBAやPythonのような汎用性は無い
といった限界があります。
VBAやPythonについては前述のとおりです。
効率化のための選択肢に優先順位をつけることは
短期的には賛成です。
それとは別に、長期的に効率化を続けるためには、
- 処理の対象が変わる
- 効率化の選択肢の内容が変わる
といった前提を無視できません。
- 新しい関数やExcelの機能
- Pythonのライブラリや実行環境
といった外部の変化はコントロールできません。
長期的には、
- なりふり構わず何でもあり!
という考え方での効率化が私には魅力があります。
蛇足
処理の量が多くなってから新しい選択を試すより、
コンパクトに「実験」する方が負担は小さくなります。
「実験」の成果は慎ましやかになるのが残念ですが(笑)。
<ご案内>
■林友範税理士事務所
■災害と税金の情報
■確定申告のご依頼も受付中!