この記事では Microsoft Access のマクロから Access VBA のマクロ から VBA プロシージャ を呼び出すときのきまり、マクロを自動実行する方法について詳しく紹介します。
Access でよく使う 画面
テーブル、クエリ、フォーム、マクロ
フィールド、レコード 等のキーワード
おぼろげながらイメージできるようになりましたか?
何が何やら
ちんぷんかんぷん!
ですよね~
まだ「友達とお茶したい!」とか
「早くコロナが収束してほしい!」
とかいうプログラムしか作ってませんもんね~(笑)
動画を再確認する
Access でよく使う画面、キーワード がイメージできるようになったら
で観て頂いた次の動画をもう一度確認してみましょう。
見づらいときは画面をフルスクリーンにすることをお勧めします。
|
何をしているかわかりますか?
わかんないっ!
ですよね~(笑)
それではできるだけ丁寧に説明しますね~
関数を自動実行させる
この動画では 04_01.accdb という Access ファイルの中に
- 関数 Access_VBA_Sample() を呼び出し
- Access を終了させる
マクロ を定義し、そのマクロに autoexec という予約名を付けることで、この 04_01.accdb をダブルクリックしたら自動的に 関数 Access_VBA_Sample() を実行し、その実行後に処理を終了するツール を作って実行しました。
その具体的手順
動画の具体的手順は次のとおりです。
- VBE 画面の中で 呼び出したい関数名 Access_VBA_Sample をコピーしてAccess の メイン画面 に戻り
- リボン 内の 作成 タブ、 マクロ を順にクリックしてマクロビルダ画面 を起動し
- マクロビルダ画面 の中で先ほど コピーした関数名 Access_VBA_Sampleをペーストするなどしながら以下の記述を完成させ
- 出来上がった マクロ を autoexec という名前で保存してマクロビルダ画面 を閉じ
- この Access ファイルをデスクトップ上に 04_01.accdb という名前で保存し
- そしてこの 04_01.accdb を ダブルクリック して起動しました
この アプリケーション は、一旦できてしまえばそれを ダブルクリック するだけであなたがしてほしいと思うことをあなたのしもべ として 何度でも 何度でも 何度でも …♪ やってくれます。
処理の多さにもよりますが 数秒~数分 で。
あなたはその仕事を今まで毎日 何分 ~ 何時間 かけてやっていましたか?
最初に VBE 画面の中で 呼び出したい関数名 Access_VBA_Sample を
コピーするのは、関数名を間違いなく マクロ の中で記述したいからで
簡単な 関数名 なら、マクロビルダ 画面 に直接書いても構いません。
マクロからVBAプロシージャを呼び出すときの決まりごと
実は マクロ から VBA 内に記載されている プロシージャ を呼び出す際には次のような決まりごとがあります。
- Sub プロシージャは マクロ から呼び出すことはできません
- マクロ から呼び出したい プロシージャは 戻り値の型が整数で先頭が大文字英数字 の名称をもつ 関数 としなければいけません。この場合に限り マクロ から呼び出すことができます
- マクロ の名称を autoexec とすると、この Access ファイルをダブルクリック すればその処理を何度でも実行することができます
- 自動実行を望まない マクロ の名前は autoexec 以外で自由に決めることができます
- こうした マクロ は ナビゲーションウインドウ 内にあるこの マクロ の名前の上をダブルクリックするか、他の マクロ から呼び出すことにより実行できます
ナビゲーションウインドウ については必要に応じて次の記事を参照して下さいね。
まとめ
いかがでしたか?
今回は マクロ から VBA プロシージャ を呼ぶときの決まりごととして
- Sub プロシージャ :マクロ から呼び出せない
- 関数:戻り値が 整数型 で名称の先頭が英大文字 のもののみマクロ から呼び出せる
- マクロ の名前を autoexec とすると、Access ファイルの起動後の自動実行処理 を作ることができる
ということを確認しました。
さてこの記事全体の目標は
- 今の状況から抜け出してもっと前向きな仕事に取り組みたい
- さっさと仕事を切り上げて充実したアフターファイブを過ごしたい
でしたよね。
あなたがその目標を達成するには
- Access 内に autoexec という名前の マクロ を作ることができる
- この マクロ の中に クエリ や VBA の 関数 等によりめんどくさい処理 を記述することができる
ことが必要です。
次回はまた
で Access VBA の次の扉を開けましょう。
さらに違う世界が見えてくるはずです。
Microsoft Access 関連教材は次のリンクからどうぞ。
いつも記事を読んで頂きありがとうございます~
今日の調子はいかがですか?