AccessでVBAプログラミングを始めた初心者が、ちょっと気になるところですよね。
Accessで学んだ後に、より本格的なVisual Basicに進む人も多いですから。
まずは略語の意味です。
・VBA(Visual Basic for Applications)
・VB(Visual Basic)
VBA は VB を基に作られたため、文法はそっくりです。
VB の機能縮小版と言ったところです。
どちらもMicrosoft社のプログラミング言語なので、かなり近いことは確かです。
ほとんどは同じなんですが、やはり違いがあります。
VBAはMicrosoft社の Office 製品専用のプログラミング言語です。
だからVBA は Office 製品がインストールされていないパソコンだと動きません。
Accessをはじめ Excel や PowerPoint などの Office 製品が入っているパソコンだと、
VBE(Visual Basic Editor)という統合開発環境が使えます。
それに対し、VBはVisual Studioという統合開発環境をインストールしてプログラムを書きます。
Visual Studioには、有料版と無料版があります。
個人利用や教育目的など、条件を満たしている場合は、無料で利用できます。
VB は Windows 上で動作するアプリケーションソフトが開発できます。
実はVisual Studioでは、VB以外にもVisual C、Fなど他のプログラミング言語でも開発できます。
VBでの開発は、ごく一面に過ぎないことが分かると思います。
また、Accessのフォームと、VBのフォームでは、部品のプロパティが違います。
以下はVBのテキストボックスのプロパティの一部です。
項目が多いので、全部は見せることができませんが、VBの方がより細かい設定ができます。
プログラミングでは、オブジェクトやプロパティーを操作しますから、
VBの方がより細かい制御が出来るわけです。
もちろん、使えるメソッドや関数も違いが出てきます。
私が業務用システム開発をして感じたのは、
よく使うコンボボックスという部品一つ見ても、差があるなーと思ったことです。
Accessのコンボボックスのプロパティーは、
プログラミング初心者でも分かりやすいのがメリットですが、
より細かい制御では、VBの方がはるかに優れていると実感しました。
その分、プログラミングには手間がかかりますがw
したがってAccessの機能で十分ならそれでも良いし、
より細かい制御をしたい場合は、Visual Basicを次の選択肢に入れると良いでしょう。