スポンサードリンク

Access VBA フォームから標準モジュールを呼び出す方法。

VBA で標準モジュールの使い方にも慣れてきた頃だと思います。

Accessの標準モジュールは、フォームやレポートに関連付けられていないので、どこからでも実行可能なプロシージャを書くことができます。

プロシージャの種類には、Subプロシージャや Functionプロシージャがありましたね。

関連付けられていないということは、フォームやレポート無しでも、プログラムのテストができるので、まず最初に学んでもらいました。(重要)

初心者がAccessでフォームやレポートを作り、さらにプログラミングまで行なうのは、難しく感じてしまうかもしれないからです。(慣れると難しくないのですが)

そこで最初はVBAのプログラミングに集中してもらうために、標準モジュールから入りました。

でも実際にシステムを運用する時に、システムを使うユーザーが、いちいち VBE(Visual Basic Editor) を起動して、イミディエイト ウィンドウから操作を行なうのは大変ですよね。間違えてプログラムを書き換えてしまう可能性もあります。

普通はユーザーにプログラムを見せないで、フォームから操作してもらうようにします。

そこで次の段階として、フォームから標準モジュールを呼び出して、処理を行なえるようにしてみましょう。

以下のようなイメージを実現します。

(1)フォーム上のボタンをクリックすると、
access-vba-294.gif


(2)テーブルにレコードが追加される。
access-vba-295.gif


(3)イミディエイト ウィンドウにも実行結果が表示される。
access-vba-296.gif

イミディエイト ウィンドウは、あくまでプログラマーの確認用なので、ユーザーに見せる必要はありません。

本当は PREF_CD や PREF_NAME の値を変えられるようにしたいところですが、今回は「フォームから標準モジュールを呼び出す」ということに集中して、後から改良することにします。


【ワンポイント】
本来、標準モジュールの使い方は、複数のフォームやレポートで、共通して使う処理を書いておくものです。


・データベースに接続する部分
・よく使う計算
・よく使う処理 など

これまでに書いてきたプログラムは、フォームのモジュールでも行なえるものです。(そちらに書いたほうが良い)

フォームやレポートを作る手間を省くために、あえて使っていたので、その点はご理解ください。

スポンサードリンク






Access VBA 初心者入門講座 TOPへ