Microsoft Access Club >VBA物語 >このページ >次頁 < 前項  サイト内検索


イベントプロシージャの記述-Docmdオブジェクト : VBA物語03-3



プログラミングのなかで最も利用する頻度が高い Docmdメソッド を用いたサンプルプロシージャをご紹介します。また、VBEの支援機能も併せて解説しています。

Docmdオブジェクト

Accessにいろいろなアクションを行なわせるには、DoCmd オブジェクトを用い る方法が最も簡単です。サンプルとして、Docmdメソッドを用いてフォームを開いてみましょう。フォームを開くには、OpenForm メソッド を記述します。

ここでややっこしい、オブジェクトやメソッドなどの言葉が出てきましたね。今は無視しておきましょう。あれもこれもじゃ、頭がパンクしますよね。

フォームを開くイベントプロシージャの記述

frm_sampleフォームを開くイベントプロシージャを以下のとおり記述します。

Private Sub Form_Open(Cancel As Integer)

    'frm_sampleフォームを開きます。
    DoCmd.OpenForm "frm_sample"

End Sub
自動メンバ

自動メンバ機能は、次に記述すべきメソッドやオブジェクト一覧をリスト形式で表示します。下図のような一覧リストが表示され ます。

自動メンバ機能は、VBEの支援機能です。Docmdオブジェクトに関連付けられたメソッド一覧がリスト形式で目の前に現れますので、開発者は次に記述したいメソッドを選択だけでプロシージャを 記述することができます。

手順
  1. Docmdオブジェクトに続き、ドット(.)を記述します。
  2. 自動メンバ機能により、候補リスト一覧が表示されます。
  3. OpenFormメソッドを選択しマウスでクリックします。
自動クイックヒント

自動クイックヒント機能は、記述したメソッド類の基本構文をヒント形式で表示します。

自動クイックヒント機能で、OpenFormメソッドの次に記述するのは、FormName つまり、フォーム名であることが読み取れます。

手順
  1. フォーム名frm_sampleを記述します。
  2. 固有名詞の場合は、ダブルクォーション(")で囲みます。
  3. OpenFormメソッドのオプションは、FormName 以外にもありますが、今回は省略しています。
留意点

マクロと同じアクションをプロシージャで行う場合、つまりマクロをプロシージャに変換した場合などは、Docmdオブジェクトで代用することができます。但し、以下のマクロアクションは代用することができません。

  1. AddMenu/メニューの追加
  2. MsgBox/メッセージボックス この場合は、MsgBox関数を使用します。
  3. RunApp/アプリケーションの実行 この場合は、Shell関数を使用して他のアプリケーションを実行します。
  4. RunCode/プロシージャの実行 この場合は、関数を Visual Basic で直接実行します。
  5. SendKeys/キー送信 この場合は、SendKeysステートメントを使用します。
  6. SetValue/値の代入 この場合は、値を Visual Basic で直接設定します。
  7. StopAllMacros/全マクロの中止
  8. StopMacro/マクロの中止
Accessヘルプ

自動クイックヒントの詳細な内容を調べたい時は、Accessヘルプを起動させます。
調べたい箇所、今回ではOpenFormメソッドにマウスカーソルを置き、ファンクションキー F1 をクリックすると、下図のようなヘルプが自動起動します。

2004/03/30

ページの先頭へ 前ページへ戻る

 


イベントプロシージャの記述-Docmdオブジェクト : VBA物語03-3


 

-Microsoft Access Club-