【VBA】ExcelVBAを勉強するために読んだ本


はじめに

私は非エンジニアの事務職です。これまで独学でExcelVBAを勉強してきました。
VBA歴は約3年、上級者とまではいきませんが、仕事で使えるマクロツールを作れる程度に上達しました。
そこで、これまで私が読んできたVBAの本を紹介します。初心者の方や、レベルアップのために、次にどの本を読もうか迷っている方の参考になれば幸いです。

1.自分のペースでゆったり学ぶExcel VBA

VBAを勉強するために最初に読んだ本です(私が読んだのは初版ですが、現在は2版が出ているようです)。
絵本のようなイラストや、キャラクターが会話形式で解説をするといった内容から、初心者にもとっつきやすいと思い、購入しました。
VBAの基本的な内容を易しく解説してくれるので、初心者の1冊目におすすめです。
途中で挫折することはないと思いますが、その反面、この本の内容だけでは実務に活かせるようにならない点には注意が必要です。

【Amazon】自分のペースでゆったり学ぶExcel VBA

2.今日から使えるExcelマクロ&VBA

2冊目に読んだのがこの本です。
様々な機能を実装していくとともに、それに必要な知識を身につけていく、という構成になっており、通常のブックやシートの操作の他、オートフィルター、ユーザーフォーム、図形の取り扱い等について学ぶことができます。
知識の範囲を広げることで、様々な処理が行えるようになりました。この本を読み終えた頃から、実際に仕事でVBAを活用できるようになり始めたと思います。
一方で、書いてある内容を全て覚える必要はないと思います。私も仕事で図形やグラフを扱うことがなかったため、実はいまだに図形やグラフの取り扱い方がよくわかっていません。プロのエンジニアではないので、必要な知識だけ選り好みして身につけていれば良いと思います。

【Amazon】今日から使えるExcelマクロ&VBA

3.Excel VBAを実務で使い倒す技術

3冊目に読んだこの本は、今までの本とは少し種類が異なります。
この頃の私は、2冊目まででそれなりに知識を身につけており、わからないことがあってもネットで調べればよいため、知識をつけるために本を読む必要は特にない、といった時期でした。
この本は「○○の処理をするためにはどのようなコードを書けば良いか」ではなく、「コードの書き方や、書く際の注意点」を解説したものです。
具体的には、変数の命名規則、エラーが発生したときの対応方法、読みやすいコードの書き方といった内容が書かれています。
独学で勉強していると、自分の書いたコードを読んで指導してもらうという機会がないため、このような知識は得にくいものです。
この本のおかげで、コードを書いてただ動かすという段階から、「プログラムを作る」という段階にステップアップできたと思います。

【Amazon】Excel VBAを実務で使い倒す技術

4.Excel VBA実戦のための技術 入門レベルでは決して足りない実務に必須のスキルとは

4冊目は、3冊目をさらにレベルアップしたような本です。タイトルからして強そうな感じですね。本の厚さもかなりのものです。
この本は3冊目のように「書き方」についても踏み込むとともに、より細かい知識(MsgBox "hello"MsgBox("hello")の違い等)や、よりレベルの高い知識(クラスモジュール、Accessとの連携等)が紹介されています。
1回読んだだけではなかなか理解できませんが、何度も読んで実務に活かしていくことで、少しずつ身についていきます。この本の内容を理解し、知識を自在に使いこなせるようになれば、業務改善に貢献できるような大掛かりなマクロツールを作れるようになると思います。
(ちなみに個人的には、クラスについて学ぶ場合は、他の言語でクラスを勉強してから、VBAではどのように実装するかを調べた方が良いと思います。)

【Amazon】Excel VBA実戦のための技術 入門レベルでは決して足りない実務に必須のスキルとは

5.パーフェクトExcel VBA

最後に読んだのがこの本です。
VBAの言語仕様が網羅的・体系的に記載されており、これまで身につけてきた知識のスキマを埋め、全体像が理解できるような内容になっています。
読んでいくと、点と点が線でつながるような感覚になり、「VBAの理解もずいぶん進んだなあ」という達成感が湧きました。
この本を読めるレベルに至るまでが長い道のりですが、ある程度VBAを使いこなせるようになった方には、是非読むことをおすすめします。

【Amazon】パーフェクトExcel VBA

おわりに

以上、私がこれまで読んできたVBAに関する本の紹介でした。気になるものがあれば、まずは書店で立ち読みしてみてください。
ちなみに私は全て紙の本で購入しています。紙にするか電子書籍にするかはお好みで。