【VBA中級者へ】VBA上級者になるための最短経路(パーフェクトExcel VBA)
「だいぶVBAが書けるようになってきたけど、正しいやり方なのか正直自信が無い」
今回はこんな悩みを持つ人に向けた内容です。
- なんとなく書けるけど、正しいのか不安
- やり方がたくさんあって混乱する
- もっと綺麗なコードが書きたい
- エラー要因の特定に時間がかかる
- 公式ドキュメントを読んでも分からない
VBAは多種多様な書き方をすることができます。
そのため、VBAに慣れてくるとかえって
「この書き方で良いのかな?もっと良いやり方があるのでは?」と迷うようになってきます。
そんなあなたにオススメなのがパーフェクト Excel VBAです。
VBAの理解しにくいポイントが余すことなく紹介されています。
分厚いのがネックですが、これを読み切ればまず間違いなくVBA上級者になれます。
そもそもなぜVBAは理解しにくいにか?
VBAが理解しにくいのは、なんとなく書いても動いてくれるからです。
Sub hoge()
Cells(1, 1) = "hoge"
End Sub
例えば上のコードを実行すると、A1セルにhogeと入力されます。
しかし、これを正確に書くと次のようになります。
Sub hoge()
Application.ActiveWorkbook.ActiveSheet.Cells(1, 1).[_Default] = "hoge"
End Sub
- Application:アプリケーション(Excel)
- ActiveWorkbook:アクティブなワークブック
- ActiveSheet:アクティブなシート
- [_Default]:Rangeオブジェクトのデフォルトプロパティ
省略すると自動的にアクティブなワークブック/シートが指定されます。プロパティもデフォルトプロパティが指定されています。
省略しても自動的に指定してくれるので、なんとなく書いても動きます。
しかし、なんとなく動いてくれるので、その正確な意味を理解するのが難しいのです。
VBA上級者になるためには、この省略された内容を理解していく作業が必須になってきます。
これを読めばVBAの全体像が分かる
この省略された内容について詳細に説明されている書籍はほとんどありません。
そして、通常はプログラムのドキュメントで理解していくものなのですが、VBAのドキュメントは構造が分かりづらく、ドキュメントだけで理解するのは困難です。
この問題点を解消するために書かれた本がパーフェクト Excel VBAです。
下記は著者のサイトに書かれている内容ですが、全くもってこの通りです。
・これからのVBAの学習コストがめちゃめちゃ下がる
https://tonari-it.com/perfect-excel-vba/
・VBAの構造が腑に落ちる、全体像が見渡せる、見通しが良くなる
・あちこちに存在する落とし穴にハマらなくなる
・どこに何を書けばいいかわかる、迷わなくなる
・リーダブルでメンテンナスしやすいコードがかける
約3,500円と値段が張りますが、VBAをマスターする時間が数十時間スキップできる思えば安いものです。
VBAの上級者になりたいという人は買って絶対に損しません。
VBA初心者の方には
はっきり言ってパーフェクト Excel VBAは初心者の方には全くオススメできません。
理論的な理解には必須なのですが、プログラムがすぐに書けるようになるものではありません。
VBAの初心者でまずはプログラムに慣れたい、書きやすくなりたいという方には株式会社すごい改善のこちらの本がオススメです。
最初から知っておきたいVBEの便利な機能から順番に覚えていくことができます。