AccessVBAの基本1

Pocket

Accessでもマクロが使えます。

マクロというと、Excelと同じで
①動作を記録させるマクロ

②コードを自分で入力するVBA
の二つのマクロ機能が備わっています。

Excelの場合、VBAが殆どでマクロはポチポチつかう程度ですが、
Accessの場合は、VBAが100%でマクロは全く使いません。

AccessVBAですることは、
データの入力
データの抽出
データの集計
フォーム・レポートを開く
データを選択してフォーム・レポートを開く
等々、Accessのあらゆる操作をすることができます。

またテーブル間のデータの更新、入力については
著書ではSQLを解説していますが、実際の仕事ではSQLはほとんど使わず
専らADOを使います。

そんな便利なAccessVBAの基本的な部分を解説したいと思います。

サンプルファイルです。

最初にサンプルファイルを開きます。
フォーム1を右クリックし、デザインビューで開きます。
2612201
コマンドボタンのイベントタブのクリック時の赤枠部分をクリック。
ビルダーの選択で、コードビルダーを選択します。この辺はお決まりのパターン。

VisalBasicEditorが起動するので、ここの緑の枠の中にコードを入力します。
2612202
今回は、フォーム1のコマンドボタンをクリックしたときに、フォーム2が開くようにします。
2612203
コードの入力の仕方は、フォームを開くときは、「docmd」と打ち込んで、「.」を入力すると、
上記のように入力のヒントが出てきます。
フォームの開き方は、
docmd.openform”オブジェクト名”
です。コードの入力時は大文字小文字を区別せず、小文字も大文字に自動で変換されるので、
全て小文字で入力します。
大文字に変換される=入力は正しい(意図した通りに動く動かないは別として)
と思って頂いて構いません。

mと”の間のスペースは自動で入りますので、入力するときは入れても入れなくても
どちらでもOKです。

ですので、ある程度アバウトにコードを入力しても、ソフトが勝手に補正をしてくれます。
(但しSQLの場合は半角スペースも全角スペースも厳密に入れないと動かないので要注意。)

次のようにコードを入力します。
Private Sub コマンド2_Click()
DoCmd.OpenForm “フォーム2”
End Sub

DoCmd.OpenForm “フォーム2″→docmd.openform”フォーム2″と打っても勝手に変換してくれます。

実行結果です。
2612204

簡単なプログラムですが、こういったコードの積み重ねることで使い勝手のいい
データベースが出来上がります。

=================================
子供はもう冬休み。こちらは年末調整の最盛期。
今年は正社員を一人増やしたお蔭で思った以上に順調に消化。
この調子で来年の確申期も乗り切れそうな予感がします。

メルマガを発行します。
ご興味がある方は、メルマガ発行します!
からお名前とメールアドレスの登録をお願いします。

本日も最後までお読み頂きありがとうございました。