• 締切済み

VBAでのプログラム

AccessにてExcelのファイルをインポートしてA,B,C・・・ という複数のテーブルを作成しました。でそのテーブルからA-1,A-2,B-1,B-2・・・というクエリを作成し、それからオートフォームで個別に表示できるフォームをそれぞれ作成しました。 ここからが質問なのですが、上記のファイルをフォームを 作成して検索できるようにしたいと思い、フォームは作成できたのですが、それに対応するアクションのプログラム がわからないのでご存知でしたら教えてください。 まず2つのチェックボックスで*-1,*-2とクエリ、フォームを選択し、コンボボックスでA,B,C・・・を選択して、コマンドボックスでボタンをクリックすると希望どおりのクエリかフォームが表示されるといった具合です。 かなりわかりづらいと思いますが、補足をさせて頂きますのでよろしくお願いします。

みんなの回答

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 クエリの実行も、フォームを開く動作もDoCmdオブジェクトのメソッドで出来ます。 クエリの実行 DoCmd.OpenQuery クエリ名 フォームを開く DoCmd.OpenForm フォーム名 チェックボックスやコンボボックスでの選択結果から、該当するクエリ名やフォーム名を取得して、上記のように実行するコードをコマンドボタンのクリックイベントに記述して下さい。 引数などの詳細はヘルプなどを参照して下さい。

picca
質問者

補足

ご回答ありがとうございます。 どのようにして作成していくのかはわかったのですが、 範囲を指定していくプログラムの記述の仕方がわから ないのでできれば教えてください。 まず、コンボボックスで ComboBox1.AddItem "A" ComboBox1.AddItem "B" A~Fを選択し 一つ目のチェックボックスで OptionButton1.Caption = "*-1" OptionButton2.Caption = "*-2" のどちらを選ぶか選択し、 2つ目のチェックボックスで OptionButton1.Caption = "テーブルの表示" OptionButton2.Caption = "フォームの表示" OptionButton3.Caption = "クエリの表示" で最後に 上記で選択されたテーブル・フォーム・クエリの何れかを 表示させる DoCmd.OpenTable テーブル名 DoCmd.OpenQuery クエリ名 DoCmd.OpenForm フォーム名 と流れはわかるのですが、自分でできる限りのことを しましたが、うまくいきません。 どうかよろしくお願い致します。

関連するQ&A

専門家に質問してみよう