知人から「Excelのマクロを勉強したいんだけど、どうやって勉強したら良いの?」と聞かれたので、VBAを学ぶときに役立ちそうな参考資料をちょっと考えてみました。
(下記は独断と偏見まみれの私見になりますので、あくまでも参考意見の一つとして捉えていただければ幸いです。)
まずは、日々の業務をマクロを使ってちょっとでも効率化したい!と考えている方向けの資料ですが、こういった方にお薦めしたいのは、何と言っても武藤 玄さんが書かれた「ストーリーで学ぶ Excel VBAと業務改善のポイントがわかる本 【演習問題付き】」です。
この本は実務者の方向けに書かれたVBAの入門書籍で、主人公である星くんが“VBAってなに?”という何も分からない状態から、周りの人に支えられつつVBAを学び、徐々に日常業務の課題をVBAで解決していく、という物語仕立てになっています。
(内容については、当ブログの記事「「ストーリーで学ぶ Excel VBAと業務改善のポイントがわかる本」の見本誌をいただきました。」にレビューとして色々と書いていますので、そちらを見ていただければと思います。)
この本の良いところは、“読みやすい”ところと、“実務に特化している”ところだと個人的には思います。
先述の通り、本書は物語仕立てになっているので、サクサク読み進めることができます。それでいてVBAのごくごく基本的なところはちゃんと押さえられているので、まったくVBAに触れたことが無い人でも、この本を読めば簡単なマクロくらいはすぐに組めるようになるだろうと思います。
また、本書は業務でありがちな課題を題材としていて、さらにはVBA化に向く業務や向かない業務の説明、業務システムを開発するための考え方(ここで言う業務システムとはプロの開発者が設計開発する大規模なものではなく、あくまでも素人の個人でもできる小規模なものです)までもが解説されているので、VBAを使って業務の効率化をしたい!、と考えている人にはまさに御誂え向きの本と言えるでしょう。
残念ながら、普通の書店ではあまり取り扱われていないので、“ちょっと立ち読みしてみよう!”というわけにはいかないところが難点と言えば難点ですが、この本の元になっているコラムは下記ページから読むことができるので、興味がある方は是非一度ご覧になってください。
・やってみよう!Excel VBAで業務改善!|VBAエキスパート公式サイト
http://vbae.odyssey-com.co.jp/column/index.html
次に、仕事で使うわけでは無いけどVBAやマクロに興味がある、趣味の一つとして勉強してみたい!という方向けの資料ですが、これは、本屋さんで並んでいるVBA関連書籍を試し読みしてみて、自分に合いそうな良さ気な書籍があればそれで良いのではないかと思います。
カラーでイラストがいっぱい入っている本が良い!という人もいれば、O’Reillyのように解説がビッシリと詰まっている方が良い!という人もいるでしょうから、(その本の中身の正確性はともかくとして)まずはVBAに触れてみるという点では、自分の好みに合う本を手に取ってみるのが良いのではないでしょうか。
(私自身、手に持って指でページを捲る紙の書籍の方が好きなので、ついつい紙の本を薦めてしまうのですが、KindleやKoboといった電子書籍リーダーに慣れている人は、紙に拘らず電子書籍でも良いだろうと思います。)
最後に、他言語はやったことがあるけどVBAは触ったことが無い、という他言語経験者の方向けの資料になりますが、個人的には、
- Microsoftのサイト
- マクロのヘルプ(VBEでのF1キー)
- オブジェクト ブラウザ
- 検索エンジン
で良いのではないかと思います。
MicrosoftのMSDNやサポートページには、下記のように基本的な解説が載っているページも多いので、すでに他言語を学んだことがことがある人であれば、これらのページを見るだけで概要は把握できるだろうと思います。
- Excel 2010 VBA の基礎知識
- http://msdn.microsoft.com/ja-jp/library/office/ee814737.aspx
- Office 2010 の VBA 開発の基礎知識
- http://msdn.microsoft.com/ja-jp/library/office/ff986246.aspx
- Microsoft Office 2000/Visual Basic プログラマーズ ガイド
- http://msdn.microsoft.com/ja-jp/library/cc376607.aspx
- オブジェクトおよびコレクションを理解する
- http://msdn.microsoft.com/ja-jp/library/cc344127.aspx
- Microsoft Office Excel 2003 オブジェクト モデルの初心者向けガイド
- http://msdn.microsoft.com/ja-jp/library/aa203714.aspx
- Excel 2007 Application オブジェクト開発者向けガイド
- http://msdn.microsoft.com/ja-jp/library/bb978780.aspx
- Office VBA 開発者のための 10 のヒント (2003 年 2 月)
- http://msdn.microsoft.com/ja-jp/library/aa163981.aspx
- Excel 2013 開発者用リファレンスへようこそ
- http://msdn.microsoft.com/ja-jp/library/office/ee861528.aspx
- Office オブジェクト モデルに関するドキュメントの検索と使用方法
- http://support.microsoft.com/kb/222101/ja
ヘルプに関しては、VBEでコードを書いている途中、調べたい単語を選んでF1キーを押すだけで関連のページが表示されるので、非常にお手軽で便利です。
サンプルコードも載っているので、これを見ればすぐにコードが書けるだろうと思います。
(ダウンロードできるヘルプファイル版のリファレンスもあるので、こちらのファイルを手元に置いておいても良いでしょう。)
オブジェクト ブラウザは「オブジェクト ブラウザを使用する」にもある通り、各オブジェクトのメソッドやプロパティ、イベントといった情報をまとめて見ることができるので、どんなオブジェクトにどんなメソッドやプロパティが用意されているか、また、どんな構文になっているのかをすぐに確認することができます。
そして最後に検索エンジンですが、たとえばVBAでフォルダ選択ダイアログを使いたいときは「VBA フォルダ選択ダイアログ」といったキーワードで検索すれば、参考になるコード例がごまんとヒットします。
プログラムに慣れている方であれば、そうしてヒットしたコードを見るだけで、必要な処理を書くことができるでしょう。
というわけで、すでに下地としてプログラミングの知識がある方の場合は、改めて書籍を買わなくても、VBAでコードを書けるようになるだろうと思います。
(書籍を買う場合はコード例がたくさん載っている逆引き辞典系の本がお薦めです。)
・・・と、ここまで書いてみましたが、私もVBAに精通しているわけではないし、人に教えたり偉そうなことを言える立場ではありません。
最初に書いた通り、上記資料の紹介は一VBAマクロユーザーの私見として「こういう考え方もあるんだな」程度に思っていただければ幸いです。
この記事へのコメントはありません。