2017年7月
エクセルVBA:配列を使えば驚異的なスピードアップ
こんにちは、草加駅徒歩3分のパソコン教室・エクサパソコンスクールです。
エクセルのマクロ(VBA)を使えば、時間のかかっていた仕事をはるかに短時間で終わらせることができます。
いままでまる二日かかっていた集計作業など、ボタンを押すだけ、ものの三十秒もあれば処理することも可能です。
例として、アンケートの集計があります。
50問の設問があり、すべて5択で答えるようになっています。
回答者数は2,000名です。
集計するレコードは100,000レコードです。
これを各設問の回答ごとに合計数を集計します。
For Each ステートメントを使ったプログラムで集計してみました。
コア i7のパソコンで、34.46秒かかりました。今までほぼ二日間、10時間以上かかっていた仕事が34秒で終われば驚異的ですよね。
「あー、マクロにしてよかった」と思う瞬間です。
次に配列を使ったプログラムを組んで実行してみました。
なんと、0.04秒で終了しました。約860倍の速さです。
エクセルのマクロもコーディングのやり方次第でさらに実行時間を縮めることができます。
0.04秒なんて、「ほんとに実行しているの?」というレベルですよね。
みなさんも、エクセルのVBA勉強してみませんか。