VBAとは何か(全体の中での位置づけ)
■VBAとは、どのようなものでしょうか?
プログラムを組むので難しい??
アクセスでは、テーブルとクエリでいろいろなデータを加工したり、抽出したりすることができます。
でも、フォームを作成して、いろいろなデータの入力、修正、削除処理やボタンのクリックの処理などを,行うには、マクロやVBAを覚える必要があります。

図の赤丸の所です。
VBAは、Visual Basic for Appication と言います。
ブイビーエーと呼びます。
ベーシック言語のひとつです。
エクセルにも、VBAがありますが、アクセスのVBAとコードが少し違っています。
エクセルのVBAをそのままコピーしてもアクセスでは動きません。
もちろん、エクセルのVBAを作成できれば、アクセスのVBAの習得は早いですね。
VB(ビジュアルベーシック)やVB.NET(ブイビードットネット)などもビジュアルベーシックですが、
内容は異なります。
アクセスのVBAをマスターした後、VB.NETをマスタする人は多いですね。
■VBAはどのようなときに使用するかを説明します。
例えば
ボタンをクリックしてフォームを開くという処理をします。
これをアクセスで作成する場合は、
- まずフォームにボタンを作成します。
- ボタンのプロパティのイベントタブの「クリック時」の横のボタンをクリックします。
- 「ビルダの選択」で「コードビルダ」を選択します。
- ビジュアルベーシックを書く画面がでます。
- ビジュアルベーシックのコードを書きます。
フォームを開くというコードです。
以下のようになります。

■VBAのコードを記述する場所を説明します。
上のように、プロパティのイベントから直接VBAのコードの場所へいくことができます。
リボンからもビジュアルベーシックにいくこともできます。
「作成」タブの「マクロとコード」グループの「Visual Basic」をクリックします。
■VBAの処理のやり方
VBAの処理のやり方は、オブジェクト指向のやり方です。
今のプログラムは全部そうですね。
先ほどの
「ボタン」を「クリックしたら」「フォームを開く」という処理の場合は、
「ボタンを作って」「クリック時」のところに「フォームを開く」というVBAのコードを記述します。
VBAを書くのは、「フォームを開く」というコードだけです。
処理のやり方はそんなに難しくはありません。
でも、VBAを習得するのが難しいのは、いろいろなケースがあり、それぞれについて、全部内容が異なっているからです。
いろいろな場合のVBAのコードを持っておくことです。
ドラえもんのポケットですね。
●「VBA」の関連ページです。
|
おすすめ教材
- 「アクセス(Access)のシステムを無料のSQL Server 2019 Expressへ移行してみよう」教材
あなたの会社のアクセス(Access)のデータベースやシステムに不安を感じていませんか?
アクセスのデータ量が多くなり処理スピードが遅くなった。
アクセスのデータを共有したい。
セキュリティに不安がある。などと、感じている方は!!
(SQL Server 2019 Expressバージョンです。)
- 「Accessや自社運用のSQL Server Expressをクラウドへ移行してみよう
(Microsoft Azure版)」教材
「SQL Server」を「クラウド」で使用したい!!
どこからでも「SQL Server」を使いたい
「SQL Server」のコストを安くしたい
「SQL Server」の管理が大変だ
すぐに「SQL Server」を使いたい
などとお考えの方は是非お読みください。
- 1週間でアクセス(Access)のシステム開発ができる~
「在庫管理システムをアクセスで作ってみよう」教材
「アクセスのプログラム/システムを短期間で開発したい方」、
「アクセスのフォーム/VBAを完全にマスターしたい方」のための
アクセス(Access)を使って1週間でシステム開発する究極の方法とは?
- 『Excel/Accessで「QRコード」を活用しよう』教材
「Excel」や「Access」で「QRコード」を活用したい!
「QRコード」の「一括作成」や「宛名印刷」をおこないたい。
「納品書」や「出荷伝票」を「QRコード」で作成したい。
「QRコード」を「CSVファイル」で読みこみたい。
などとお考えの方は是非お読みください。
- 「アクセス(Access)プログラムの仕様書の作り方」教材
マイクロソフトアクセスを使用して、プログラムの作成/システム開発をおこないたい方の為に、 アクセス(Access)のプログラム開発に成功するために絶対に必要な「仕様書」とは?
[マイクロソフトアクセス(Access)活用法(ホームへ)]
10:451505