【VBA中級者の人へ】VBA上級者になるための最短経路(パーフェクトExcel VBA)

2021年10月18日

だいぶ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の学習コストがめちゃめちゃ下がる
・VBAの構造が腑に落ちる、全体像が見渡せる、見通しが良くなる
・あちこちに存在する落とし穴にハマらなくなる
・どこに何を書けばいいかわかる、迷わなくなる
・リーダブルでメンテンナスしやすいコードがかける

https://tonari-it.com/perfect-excel-vba/

約3,500円と値段が張りますが、VBAをマスターする時間が数十時間スキップできる思えば安いものです。

VBAの上級者になりたいという人は買って絶対に損しません。

created by Rinker
技術評論社
¥3,608(2022/07/01 11:26:51時点 Amazon調べ-詳細)

VBA初心者の方には

はっきり言ってパーフェクト Excel VBAは初心者の方には全くオススメできません。
理論的な理解には必須なのですが、プログラムがすぐに書けるようになるものではありません。

VBAの初心者でまずはプログラムに慣れたい、書きやすくなりたいという方には株式会社すごい改善のこちらの本がオススメです。

最初から知っておきたいVBEの便利な機能から順番に覚えていくことができます。

《VBA中級者向けの本》
VBA上級者を目指したい人にはパーフェクトExcel VBA一択です。

created by Rinker
技術評論社
¥3,608 (2022/07/01 11:26:51時点 Amazon調べ-詳細)

《マクロ作成に困ったら》
自分で作るのが難しいと感じたら、プロに作ってもらう手もあります。
マクロ(VBA)の依頼におすすめのプログラマーを紹介の記事をご覧ください。

他の「VBA」の記事はこちらからどうぞ

VBA

Posted by やろまい