エクセルVBA初心者におすすめ、実務で使える、実践的サンプルコードが豊富な逆引き本「できる逆引き Excel VBAを極める 勝ちワザ700」のレビュー

前回の記事では、
エクセルVBAもプログラミングも初めての超初心者な私が、
急遽仕事でエクセルVBAを使うことになり、購入した入門本

「かんたんプログラミング Excel 2010 VBA 基礎編」

についてのレビューを書いたんですが、(レビューはこちら→エクセルVBA初心者におすすめの、エクセルVBA入門本のレビュー

今回はその続きで、
エクセルVBAの入門本を購入した際に一緒に購入した
実践的なサンプルコードが載っている、
いわゆる「逆引き本」
についてレビューしたいと思います。

エクセルVBA初心者でもわかりやすく、かつ実践的なサンプルコードが豊富にのっている逆引き本を発見!

今回私が、エクセルVBAの入門本と一緒に購入した、
エクセルVBA初心者におすすめの逆引き本はコレ↓

「できる逆引き Excel VBAを極める 勝ちワザ700 2010/2007/2003/2002対応 (「できる逆引き」シリーズ)」

この本もかなり当たりでした!

この本はamazonでは悪いレビューはなかったけど、
レビュー数が少なくて、購入の決め手になる情報が探しにくかったのと、
他の逆引き本もよさげなのがあって、けっこう迷いましたが、
これにしてよかった、と今は思います。

では、以下にこの本の買ってよかった点を挙げていきます。

初心者に優しい、VBAの基礎、プログラミングの基礎について説明する項目がある

この逆引き本には、実践的なサンプルコードが載っているだけではなく、

「VBAの基礎知識」という項目に44ページ
「プログラミングの基礎」という項目に63ページと、

いざサンプルコードを使用する際につまづかないように、
サンプルコードを逆引きする以前にある程度知っておいた方がよい基礎知識について、
逆引き本にしては、非常に丁寧に、わかりやすく説明されています。

例えば、「VBAの基礎知識」では、

  • VBE(エクセルに内臓されているコードを書くためのエディタ)の使い方
  • プロシージャ(VBAでは命令文のひとかたまりをこう呼びます)の作成手順
  • VBAの基本構文

などといった、
VBAのコードをいじる前に知っておきたい知識や、
イベントプロシージャ(何かの動作をきっかけにコードが実行されるようなVBAの命令文)の作成方法など、

VBAのコードをちょっと改変したい時などに、知っておくと助かる基礎知識について書かれています。

また、「プログラミングの基礎」では、

  • 変数の扱い方
  • 配列
  • 条件式の作成方法
  • エラー処理
  • デバック(コードが意図した通りに実行されない場合に原因を探す作業)

などといった、
サンプルコードを改変する際に知っておくと、
かなり自由に改変したり、サンプルコードとサンプルコードを組み合わせて、
ほぼオリジナルなコードを作成したりできるようになるなど、

やりたいことにぴったり合ったコードを作成するために必要な基礎知識が書かれています。

(※「VBAの基礎知識」、「プログラミングの基礎」以下に記載したリスト項目のタイトルは、
わかりやすいように私が要約しているので、実際の本の目次のタイトルとは異なります。)

こんなに初心者に優しいと、

「実践的なサンプルコードがたくさん載っている本がいいのに、そんなに基礎知識にページが割かれていたら、
サンプルコードが700個といっても、簡単なサンプルコードしか載っていないんじゃないの?」

と心配になる方もいるかもしれません。

でもご安心あれ。
この逆引き本は、全878ページあります。

そのうち基礎知識に割かれたページはたった、107ページ、約12%ほどです。
見た目で言えば、
本全体の厚さ約5センチに対して、6ミリ程しかありません。

そして、もちろん、
いくら、逆引き本にしては丁寧といっても、いわゆる入門本よりは簡潔に書かれているので、
完全に入門本の代わりになるとはいえないと思います。
基礎知識の項目数は入門本とたいして変わらないですが、説明文が入門本より短いといった感じです。

ただ、そんなにコードの複雑な改変をせずに、
とりあえず、手早く基礎知識を頭に入れて、
サンプルコードを、ほぼそのまま使いたい場合には、
入門本がなくても、この逆引き本に載っている基礎知識だけで、
十分サンプルコードを使いこなせるかも
しれません。

私はその自信がなかったので入門本も買いましたが(^^;)

サンプルコードの下にサンプルコード内で使われた構文の使い方が載っている!

これは、この逆引き本の一番のおすすめポイントです。

「こんなの当り前じゃん」

と思ったそこのあなた!
載っていない逆引き本がけっこうあるんですよ!
気をつけて下さい!

私はこの逆引き本を買う前に、
図書館で借りてきた逆引き本を使おうとしたんですが、
まだ入門本も買っていなくて、基礎知識ゼロの状態だったので、
コードをちょっとだけ改変しないと、やりたいことに合わないと思っても、
そのコードに使われた構文の説明が一切ないので、
どこまでが構文の要素なのかがわからず
どこをどう改変すればいいか検討もつかず、全く使いものになりませんでした。

この逆引き本では、
サンプルコードの下に、
サンプルコードの各行が持つ意味について

この行は、こういう意味、
次の行はこういう意味

というように、
一行ずつ説明されています。

さらに、その下に、
そのサンプルコード内で使われた構文の使い方や、
この構文はこういうふうにも使うことができます、
といったような豆知識
も載っています。

使っていて、この、構文の説明があると本当に助かります。
初心者だと、いくら入門本をさらっと読んでいても構文をすぐに思い出せないことが多いですし、
入門本には載っていない構文もたくさんありますしね。

著者はプログラマ!

「エクセルVBAという、一応プログラミング言語に分類されるものについての本なのに、
その著者がプログラミングなのは当たり前じゃん。」

と思ったそこのあなた!
全然プログラマじゃない人が書いてるプログラミング関係の入門本、
けっこうあるんですよ!
気をつけて!

私は入門本レビューの記事でも書きましたが、
複数の本で迷った場合は、
著者の経歴や同じ著者が書いた他の本はどんなものがあるのかを確認します。

今回もそのように調べたわけですが、
なんと、職業としてプログラマという記載があった著者はこの逆引き本だけでした。
(あくまでも、私が迷った本の中で、という意味です。)
他の迷っていた本の著者は、全て、経歴上で、
いついつに、エクセルVBAに目覚めた的なことしか書かれていないか、
そもそも経歴が書かれていませんでした。

察するに、職業としてプログラマを経験したことはないが、仕事上、使う必要があって覚えた人や、
いわゆる、色々なジャンルの入門本を手掛けているような会社の編集者か社員で、エクセルVBAの入門本を作成するために勉強した知識で書いているだけで、実際に実務で使ったことはないのでは?という人が書いている、、、

といった匂いが経歴から漂っていたわけです。

そういう本は、レビューをよく見ると、
職業プログラマの方か、新人プログラマかと推察される方から、
「コードが効率が悪い書き方をしている」
「実際にコードを実行すると実行速度が遅い。
ちゃんと基本文法にのっとったコードを載せるべき
(基本文法という表現が正しいかはわかりません。
こんなニュアンスのこと言ってたんだなってことで勘弁してください。)」
「著者はプログラミング経験があまりないのではないか」

などと、けっこう本質ズバリな指摘がなされていたりします。

やっぱり、どうせ覚えるなら、プログラマの方から、
「効率が悪い書き方!」
と指摘されるようなコードの書き方は覚えたくないですよね。

VBAエキスパート推薦図書!

VBAエキスパート」とは、
株式会社 オデッセイ コミュニケーションズが主催する、
「Excel」や「Access」のVBAによるプログラミングスキルを証明する資格・資格試験です。

そういったところから推薦されるからには、少なくとも、
プログラミングの基礎的な部分での間違った記載はないでしょうし、
試験勉強に使えるぐらいですから、項目も偏りなく、網羅的に学べるのではないかと思います。

この逆引き本を、ある程度、仕事で使いこなせるようになってきたら、
そのまま、この「VBAエキスパート」の資格試験を受けてみるのいいもしれませんね。

Excel2010対応でも大丈夫!

この理由は、エクセルVBA入門本のレビュー記事のほうに書いてあるので、
よければ、そちらをご覧ください。→本のタイトルがExcel2010なんだけど、大丈夫?_エクセルVBA入門本のレビュー

私は、この逆引き本と合わせて購入した入門本を使って、
エクセルVBAの勉強を始めて2日間で、
以下のような、実務で必要だったコードを作成することができました。

  • 4月のシートを12月分コピーし、シート名に月数を順番に自動で入力する
  • ワンクリックで、全ての日付セルに入っている数式を抜き取る(再入力する)ボタンを作成する
  • ワンクリックで、プルダウンリストの解除(再設定)ができるボタンの作成
  • 各シートに4月~12月の順番で月数を自動で入力する

上記のコードは、サンプルコードを改変したり、サンプルコードを組み合わせて、
ほぼオリジナルの動作をするコードを記述したりして作成しました。

自分で想像していたよりも、ずっと早く、初心者なりにですが、
実務で使えるようになったので、ものすごく嬉しかったです。

こんなことなら、数学的センスゼロの自分にプログラミングなんて無理、、、
なんて言ってないで、さっさと挑戦してればよかったな~と思ったぐらいです。

数学はずっと赤点、
特に頭がいいわけでもない私ができたぐらいなので、
きっと、

エクセルVBAの本を手に取って読んでみる

というハードルさえ越えてしまえば、

エクセルVBAを仕事でそこそこ使いこなせるようになる

というハードルは思っているよりも低くて、
意外と誰でも、ある程度のレベルなら、
すぐにエクセルVBAを使いこなすことができるんじゃないかなと私は思っています。

私と同じように、私には無理、、、と諦めていた方がいれば、
ぜひ、この機会にエクセルVBAを気軽に学んでみて、

「なんだ、意外と簡単じゃん!」

なんて言って、どんどん作業を効率化して、楽してほしいなと思います。

【おすすめのエクセルVBA入門本と逆引き本】

かんたんプログラミング Excel 2010 VBA 基礎編

かんたんプログラミング Excel 2010 VBA コントロール・関数編

かんたんプログラミング Excel 2010 VBA 応用編

できる逆引き Excel VBAを極める 勝ちワザ700 2010/2007/2003/2002対応 (「できる逆引き」シリーズ)

関連記事

エクセルVBA初心者におすすめの、エクセルVBA入門本、参考書「かんたんプログラ...

発達障害者こそ、スキルアップとしてエクセルVBAを勉強した方がいいと思う。