
みなさんVBAってご存知ですか?
VBAとは「Visual Basic for Applications」の略でMS officeの拡張機能として
提供しているプログラミング言語です。
MS Officeというのは、皆さんも一度は使った経験がある、ワードやエクセル、パワーポイントなどのアプリケーションのことです。
今回はVBAプログラミングで、どんな事ができるのか、使うことによって、どんなメリット・デメリットがあるのかご紹介します。
目次
VBAを使ってどんな事ができるのか?
VBAを使う事で、あらゆる業務を自動化することができます。
例えば、エクセルでグラフを作成したり、お客様へ提出する成績書を作成したり、
データを集計して、報告書を作成したり、様々な業務をマクロを使うことで高速に処理することができるのです。
これだけの説明では?理解しづらいと思いますので、具体例を参考に考えてみましょう。
<例>
Aさんは月末に取引先の「製品納入状況」をまとめた報告書を作っている。
どのメーカーが何個の製品を納入したか棒グラフで表す簡単なものだが
取引先数が200社あり全てのエクセルデータを開いて個数を確認しないといけないので、かなりの時間がかかっている。
結局、A子さんは全て処理するのに3時間かかりました。
ここでマクロ(プログラムのこと)を使った場合どれくらい早くなるのでしょうか?
数分です。
数時間かけていた作業が数分で終わらせることができます。
また処理している間、A子さんは別の作業ができるので、作業時間は実行ボタンを押すまでになります。あとはマクロが処理するからです。
どうですか?ものすごい効果ですよね?
さらに、この作ったファイルを自動で保存したあと、メールを課長に送信するマクロと繋げると完全自動のオートメーションの完成です。
VBAを使う事で得られるメリット
VBAを使う事で得られるメリットは計り知れません。
時間の削減
人間の数百倍、数千倍のスピードで、処理ができるので、かなりの時間を削減することができます。
僕が以前組んだマクロで、人がやって7500時間かかる処理を50時間まで削減できた経験があります。
人間なら5分かかるグラフの作成でもマクロなら0.2秒で作ることができます。
ミスをしない
プログラムは命令された通りに動くのでミスをしません。
ミスがあるとしたら、プログラムが間違っている時です。
人が作業をする場合、ある程度の数を処理すると、一定の確率でヒューマンエラーを起こします。これはどれだけ対策しても完全には防ぐことはできません。
ですが、マクロに実行させることで、ミスを限りなく0に近づけることができます。
VBAを使う上でのデメリット
命令しないと動かない
万能なマクロでも苦手なことがあります。それは命令されないと動かない事です。
上の例ではA子さんの仕事をプログラミングすることによって、処理をすることが出来ましたが、もしプログラミングしないのなら動かないのです。
人間が指示をして初めて動かすことが出来ます。
プログラミングをする手間がかかる
プログラミングに手間がかかることもデメリットの一つです。
突発的な仕事や、たまにしかやらない仕事はプログラムを組む時間がロスにつながります。
繰り返し業務に使用すると高い効果を得られますが、そうでない場合は人がやったほうが効率がいいです。
習得には、どれくらいの時間がかかるのか?
取得には個人差がありますが、他にプログラミングをかじったことがある人は比較的早く習得できると思います。
時間はそれほど重要ではなく、「いかに多くのコードを書くか」が早く習得するコツだと思います。
インターネットに材料はあふれているので、最初はコードをコピペして動作の感覚をつかみ、慣れてきたら、手打ちで真似をするのが早く上達するコツです。