主にマクロマンとパワークエリの解説を行うサイトです

【雑記】実務にVBAを取り入れることについて僕が思うこと(いいことばかりではない)

 

お疲れ様です!てつおです。

今回は完全に雑記です。社会人歴8年でほぼ毎日Excelを触れてきた私が『VBAについて思うこと』を記したいと思います。

 

VBAが組める人は職場で重宝されると思います。

しかし、VBAの導入には注意しなければならない・・・というのが私の認識です。

 

今回、この記事で言っている『VBA』とは、個人の業務で使うようなちょこっとしたものではなく、課内や部内レベルで使うようなものを指していることに注意してください。

 

 VBAを取り入れるのは注意が必要

VBAは便利です。単純な繰り返し作業を自動で行なってくれます。

 

しかし、次の3点から私はなんでもかんでもVBAにするのはよくないと思っています。

  • 普通の職場だとVBAを組める人が少なく、そのExcelが遺跡化する可能性がある。
  • VBAの中身がブラックボックス化され、中身が不透明となり、それ以上の改善が生まれない。
  • 業務の属人化を招き、VBAが組める人が長期的に見て不利益となる可能性がある。

 

順に解説していきます。

 

普通の職場だと組める人が少なく、そのExcelが遺跡化する可能性がある

 

私の経験上、特別な職場(研究所やシステム部署など)を除いて、VBAが組める人は職場に1人か2人いれば良い方かなと思います。

その職場内にVBAを組み込んだExcelを実務に投入したとします。

うまく動作するVBAだった場合、しばらくは便利に活用してもらえるかと思います。

組んだ人も感謝され、使う人も業務を効率的に行うことができます。

 

しかし、業務環境というのは何かしらの要因で変化することがよくあります。

officeのアップデート、書類形式の変更、システムのちょっとした変更・・・

 

VBAを組むときは、そのタイミングのシステムや型に合わせているはずです。

上記のような業務環境の変化によって、突然エラーやバグが発生する可能性があり、それが積み重なっていくと、そのExcelは遺跡化していきます。

 

また、会社には「人事異動」が発生します。

もし仮にVBAを組める人間、もしくはちょっとした修正対応ができる人間が異動になった場合、そのExcelは最終的に使用できなくなる可能性があります。

 

私も経験上、かつて使用されていたであろうVBAの組まれた遺跡Excelを社内サーバで発見することが何回かありましたが、それを使用している人はいませんでした・・・

 

せっかく多くの時間をかけてVBAを組んだのに、一時的な効率化にしかならなかったら悲しいですよね。

 

VBAの中身がブラックボックス化され、中身が不透明となり、それ以上の改善が生まれない

 

VBAを組んで、それを使った業務が周り始めたとします。

だれもがそのやり方が効率的だと思い、そのやり方のままでいようとします。

 

さて、本当にそのやり方はベストなのでしょうか・・・?

実はわざわざVBAを組まなくても、他の便利な手段があったのではないでしょうか?

そもそもその業務って本当に必要なのでしょうか?実はもっと簡素化できるのではないでしょうか?

 

もし、VBAがぎっしり記述されたExcelがあり、それを別の手段で効率化しようと思っても、そのVBAコードを解読する気にはなかなかなれないと思います。

 

業務の属人化を招き、VBAを組める人が長期的に見て不利益となる可能性がある

 

VBAを組めるとその組織で重宝されます。

しかし、特別な職場を除き、そのVBAは基本的にその人しか修正、改造できません。

 

もし、そういったExcelが部内に複数浸透していると、その部署から異動させにくいでしょう。

そうなると、困るのはVBAを組んだ人となりますよね。

 

また、職場にもよると思いますが、VBAが組めて業務効率化したといっても基本的に給料が上がることはないと思います。

逆に、『VBAを組める人』という認識を受けると、部内の業務効率担当みたいになってしまい、肝心の主業務から脱線する可能性があります。

これはちょっと困った問題です。

なぜなら、その会社はVBAで稼いでいるわけではありませんよね

当然本来の主業務があるわけです。その主業務をやらずに、業務効率ばかりを行っているとどうでしょうか?

その会社の本流からは外れてしまいます。

 

業務を効率化させた人自身が不遇を受けるというのはなんだかおかしな話ですが、あり得る話だと思います。

 

まとめ

 

いかがだったでしょうか?

じゃあ、せっかくVBAを勉強したのに・・・どうすればいいんだよ?という方へ、私なりの結論ですが・・・

「うまくやれ」

ということです。

 

どういうことかというと、例えば、

・定期的にVBAの研修会を開く

・自分の組んだ説明書をしっかり残しておく

・勝手にVBAを組むのではなく、「こういう改善方法があって、VBAを導入することでこれくらい業務を効率化できます」と事前に上司にアピールしてから着手する→ 上司に便利屋と思わせないように、組織の業務として遂行する。

 

といった具合です。

「自分しかできない」というのは、実は会社にとっても個人にとってもリスクなんですよね。

 

今回は完全に雑記でした。最後まで読んでいただき、ありがとうございました。