エクセルVBAのすすめ

エクセルVBAのすすめ

 仕事を遂行するときに「どうしても既存のアプリケーションではできないこと」があります。そんなときは自分で「こんな動作をするプログラム」がほしいと思うのですが、作るのは容易ではありません。それでもやってみようと思ったとき「事務処理ならVBA」がもっともおすすめです。RubyとかDelphiとかJAVAとか簡単そうな言語はたくさんあるのですが、実用的なのはVBAです。なぜなら「エクセル」で作られた資料が職場にはたくさんあって、それらをデータとしてそのまま使うことができるからです。誰かが作った資料をそのままデータとして読み込み、処理をして、エクセルの表に出力しておくとそれをまた再利用することも可能です。データ入力に費やす時間がほとんどなくなります。使いやすさや動作だけを見ると他の言語のほうが優れている点もありますが、データがそこら中に転がっているという優位性は崩れることがないでしょう。そのほかにも


などの特長があります。

一定のパターンでほとんどの仕事ができる

 私がVBAを使い始めて5年を過ぎようとしています。最初の頃は「これまでにない画期的なものを作る」と意気込んで、妙に力が入って様々な技を入れ、後から読むと自分でも何だかわからないようなものばかり作ってました。そのうち一定のパターンを踏むとほとんどの仕事はそれでできることに気がつきました。ここでは数年前にVectorで公開した時間割ソフトと、科目選択の誤りチェックソフトを例にそのパターンを紹介します。

黄金のパターン

 そのパターンですが、まず使えるデータを見つける。表からデータを二次元配列として読み込む、各データを処理して新しいデータを作る。それを表に書き戻す。 ここで使う処理は繰り返し「for〜next」という構文、判断(条件分岐)「if〜then」そして四則演算くらいです。それ以上のことは「暇があったらやってみよう」で済むと思います。

VBAを書くエディターを起動

ともかく使ってみましょう。エディターが最初から組み込まれていますので、開発環境をダウンロードしたり、別のエディターを用意する必要はありません。ただ起動するだけです。 エクセル2007の場合です。左上のリボンをクリックします。下の絵のようになったところで下にあるEXCELのオプションをクリッックします。

次のようなウインドウが現れるので、「開発」タブをリボンに表示するにチェックを入れます。

リボンに「開発」タブが表示されます。 これで準備完了。以後開発タブは表示されたままになりますので二回目以降はこのタブをクリックするところから始まります。

後は上の図にある「Visual Basic」ボタンをクリックするとエディターが開きます。以降このエディターをVBEと表記します