日々のこと

読書と文具たまに旅行。趣味と仕事の両立が永遠のテーマ

エクセルマクロ(VBA)を覚えるとルーチンワークが捗る


【スポンサーリンク】

今日もエクセルを使ってますか?

  • テキストやCSVのデータを取り込んで、大量にファイルを作成する。
  • 漢字の人名に振り仮名を振って並び替える
  • 同じ部署の作業日報をまとめて集計表やグラフを作る
  • 複数のデータから特定のデータを抽出して印刷する

こんな風に機械的な作業を毎日行っているならば、エクセルマクロ(VBA)を覚えることで非常に負担が減ります。たとえば、数時間かかってた作業が5分で終わるとか。

プログラム?難しそう?って思うかもしれませんが、日常的にエクセルを使ってる人ならたぶん大丈夫。だって、自分がエクセルでやってることを落とし込むだけですから。

まずはやりたいことを「編集するエクセルファイルを開く」「目的のシートを選ぶ」「データを入れるセルを見つける」レベルで分解して箇条書きにできれば問題ないです。

http://www.flickr.com/photos/46411239@N05/5395284268

photo by Microsoft Sweden

エクセルマクロを使うメリット

  • 仕事の時間短縮を図ることができる
  • データのコピーミスなど人的ミスがなくなる
  • 誰がやっても同じ結果を得ることができる

マクロのいいところは、決められたことを決められたとおりにやってくれるということです。それから、あたりまえだけどPCの処理速度は人間よりも速い。

わたしがエクセルマクロを勉強したきっかけ

その昔とあるベンチャー企業にいたときに「エクセルマクロを使ったシステムを作ることになったから今すぐに覚えろ!」みたいな状況になったので。*1

その職場はやめてしまいましたが、今の職場ではVBAを使ってシステム開発の補助ツール的なもの(3千~1万行規模)をちょこちょこ作ってます。マクロを使い始めて5年くらいでしょうか。

エクセルマクロの勉強に使ったもの

社内にあった唯一のVBA本。見た目はまさに辞書。 

できる Excel マクロ&VBA 2013/2010/2007/2003/2002対応 (できるシリーズ)

できる Excel マクロ&VBA 2013/2010/2007/2003/2002対応 (できるシリーズ)

 

 1ページ、1ページ読んで勉強するようなものではなく、リファレンス的に使うようなものでした。正直な話、最初の3日くらいで使わなくなった。本を見るよりも検索したほうが早い。 

「こういうときはどう書いたらいい?」という疑問があったら、このサイトを見ていました。基礎から便利なテクニックまで網羅しています。

Office TANAKA - Excel Tips 

それから、マクロの記録ボタンを使ってみるのもあり。
「マクロの記録」で出力される結果は回りくどい書き方をしているので、あくまで参考とする程度で。*2


日々のルーチンワークは特にないなぁという人でも、「お客様にデータを提出するにあたって、大量にあるエクセルファイルの全てのシートにヘッダを設定しなくちゃいけなくなったけど、人力でやってたら日が暮れるっていうかなんというか…」みたいな目に遭ったときにエクセルマクロは役に立つので、覚えておくといざっていうときに良いのではないでしょうか。


TumblrVBAで悩んだことのメモを残しています。

Excel VBA メモ

*1:当時は開発の実務経験3ヶ月。ソフト開発のノウハウがほぼない職場で、ソフト開発担当者が私以外にはもう一人という状況だった(そしてその人は頼れる状態じゃなかった)。いろいろ大変でした…。

*2:最初のうちは気にしなくてもいいかもしれませんが、「マクロの記録」で出力されるような書き方は処理スピードが遅くなるので好ましくないと思う。