Access実践入門 TOPへ
 ■ マイクロソフトアクセス、帳票入力フォーム2(イベントプロシージャを使う)
イベントプロシージャとは
先程はマクロを使ってプロクラムをつないでいきました。
今回は、マクロを一切使わないで、マクロの命令を全てコードで書いてプログラムを動かす方法で、帳票入力フォームを作ってみます。

イベントプロシージャを使ってのプログラミング

「住所録Pro.mdb」の中の下記のものを使っています。
クエリー:「qu勤務先削除」
フォーム:「fo勤務先」「fo勤務先削除選択」

まず、フォーム「fo勤務先」のデザインを見てください

先程のマクロを使った場合と違う点のみ見ていきます。


詳細にある、削除のボタンをクリックしてみてください。
クリック時が[イベントプロシージャ]となっています。
新規で作る場合は、右端のコンボボックスの一番上の[イベントプロシージャ]を選んだ後、コンボボックスのさらに右の"..."のボタンをクリックすると、そのイベントに対して、コードを記述する場所が出てきます。そこに処理を書いていくわけです。

それでは、クリック時の右端にある"..."のボタンをクリックしてみてください。
デザイン画面の上に大きな画面が開きます。
ウィンドの表題にMicrosoft Visual Basicと出ています。Visual Basicのプログラムが呼び出されてきます。ここにはいろんなメニューがあって、たくさんの機能がありますが、ほとんど覚える必要はありません。



今、ウィンドが1つだけ開いていると思いますが、このVisual Basicを終わって戻るときは、この画面で開いているウィンドは閉じてから戻るようにしましょう。開けたまま戻ると、次回開いたときに、前回開いたウィンドが下にあって、わかりにくくなります。
逆に言うと、いろんなフォームのプログラムのコードを同時に編集できるわけです。

プロシージャのウィンドの左下に横線の入ったボタンが2つ並んでいます。
左の線が少ない方が、プロシージャの1つ1つを1つの窓で見る場合。
右の線が多い方が、このフォームのプロシージャをすべてスクロールして見ることができます。
プロシージャの行数が少ないときは、右のボタンの方が、使いやすいでしょう。

docmd.〜という記述は、「マクロで用意されている処理方法を使います」という意味だと思ってください。
ここでは、DoCmd.OpenForm "fo勤務先削除選択"となっています。
マクロを見ていただくとわかるのですが、アクションには、それぞれ引数というのが、下に表示されます。それを横に並べて書いていきます。
DoCmdは、マクロのアクションを使いますという宣言みたいなものです。
OpenFormは、アクションのフォームを開くにあたります。
そのあと、半角スペースを入れて、引数の1つ目(フォーム名)
次からは、カンマでつないでいきます
2つ目の引数は(ビュー)
3つ目の引数は(フィルター名)
4つ目の引数は(Where 条件式
5つ目の引数は(データモード)
6つ目の引数は(ウインドモード)
ここでは、フォーム名しか指定していませんが、省略された場合は、規定値が採用されます。
簡単に言ってしまうと、「fo勤務先削除選択」を普通に開けるということでしょうか。
このあたりの使い方も、今後出てくるサンプルの中で確認してみてください

終了ボタンでは、自分自身のフォームを閉じる[イベントプロシージャ]が書かれています。
DoCmd.Close
閉じるというアクションだけしか指定せず、後は省略しています。
これで、一番上にあるウインドが閉じます

ここでは、マクロを使っていませんが、実際には、両方をうまく使ってプログラミングするのがいいと思います。ただ、全てマクロを使うと、マクロの中の行数が増えて、解りにくくなります。
後で、出てきますが、住所録の処理では、両方使っていますので、それを参考にしてみてください。

Visual Basicを終わる時は、ウィンドの×ボタンで閉じます、特に今の記述したコードを登録するといった作業はありません。フォームが登録されるときに、同時に登録されます。


ここで、タブオーダーの説明をしておきます。
タブオーダーとは、入力順を指定することです。
フォームのデザインが開いている状態で、上のメニューから「配置」「レイアウトの調整」「タブオーダー」を選んでください。


ここでは、この順番で、入力されます。
ただ、削除はタブオーダーを「いいえ」にしてるので、止まりません。

レポートの作成
フォームフッターの印刷ボタンをクリックすると、勤務先のデータを一覧印刷できるようになっています。
簡単な一覧表です。

レポートの作成手順を説明します。

まず、レポート「re勤務先」のデザインを見てください


ホームとほとんど同じです、
ページフッターの少し下あたり(何もない所)をクリックします。
すると、プロパティのウィンドの表題がレポートになります。レポート全体の設定ができます。
ここで、見るべき項目は次のものです。
[レコードソース]だけです。
印刷したいテーブル(あるいはクエリー)の名前をコンボボックスから選択します。
あとは、レポートの表題のラベル、各項目のテキストボックスとラベルがあり、フォームと同じようなデザインです。
右上にページを印刷するテキストボックスがありますが、コピーして別のレポートのレポートヘッダーに貼り付ければ、どのレポートにも使えます。


レポート特有のウィンドが有ります。
並べ替え/グループ化設定のウィンドが開いていない場合は、上のメニューから「デザイン」「グループ化と集計」「グループ化と並び替え」をクリックしてください。

フィールド/式に最低1つ並び替えのキーになるものを設定します。
並び替え順序も選んでください。
選んだ項目毎に印刷ページを変えたり、小計計算をしたりすることができます。
後の説明でまた出てきます。

これが基本のレポートになりますので、これを複製して、レコードソースと項目、デザインを変更すれば簡単にレポートは作れます。


レポートは、プレビュー画面を開いた状態で待っていますので、実際に印刷する場合は、上のメニューから、「ファイル」「印刷」を選んでください。
また、用紙の設定を変更する場合も、「ファイル」「ページ設定」を選んでください