
いつもたいへんお世話になっております。
アクセス97で、フォームを複数作りました。フォーム1、フォーム2、フォーム3。
それぞれのフォームのコマンドボタンでフォーム4を呼び出します。
フォーム4のレコードソースにクエリを使用しますが(クエリ1)、
このクエリにの抽出条件に、最初のフォームのコントロールの値(部門)を設定したいのですが、抽出条件に、「FORMS!フォーム1!部門」とすると、同じクエリを他のフォームには使えませんよね?パラメータを作成して、それぞれのフォームのコマンドボタンのなかで指定できてしまえば、クエリ1と、フォーム4を共有できますよね。現在は、それぞれのフォームに対応するフォーム4とクエリ1を作成しています。なんとかなりませんか?
説明が難しくなってきちゃった・・・
・・・パラメータの入力要求をVBAで処理したいのですが、いい方法を教えてください。
No.1ベストアンサー
- 回答日時:
こんにちは。
maruru01です。フォーム4のレコードソースをSQLステートメントで指定すればいいと思います。
それを標準モジュールにプロシージャ化しておいて、抽出条件を引数にすればいいと思います。
標準モジュールに、
Public Sub myOpenForm4(Cond As String)
SQL = "(前部)" & Cond & "(後部)"
DoCmd.OpenForm "フォーム4"
Forms!フォーム4.RecordSource = SQL
End Sub
としておいて、各フォームのコマンドボタンのクリックイベントでこのプロシージャを呼び出せばいいと思います。
参考になれば幸いです。
では。
No.2
- 回答日時:
フォーム4の抽出条件は、クエリーで設定しないとないとまずいんでしょうか?
フィルターでの処理でも良ければ、フォーム1~3からフォーム4を開くときに、OpenArgsでパラメータを渡して、Openイベントでフィルターをかけてやるのが簡単かと思いますが。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Microsoft 365 Basic サブスク...
-
ACCESS VBA でのエラー解決の根...
-
Accessのクエリで、replace関数...
-
access vbaでフォームを開くと...
-
access2021 強制終了してしまう
-
Microsoft365にAccessってあり...
-
Access DAOのExecuteメソッドの...
-
Access 複数条件検索の設定が上...
-
「テキストデータで送ってくだ...
-
Excelを開く時と閉じる時に一度...
-
AccessからExcelを開いて閉じて...
-
access2021 VBA メソッドまたは...
-
Accessのレポートについて
-
Accessでレポートを印刷する時...
-
Accessフォームにマクロを組み...
-
列が255以上のCSVファイルをAcc...
-
アクセス レポートを開いたとき...
-
Accessでフォームに自動入力し...
-
Access Error3061 パラメータが...
-
日付のテキストボックスに(例...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Microsoft 365 Basic サブスク...
-
「テキストデータで送ってくだ...
-
ACCESS VBA でのエラー解決の根...
-
Accessのクエリで、replace関数...
-
access2021 強制終了してしまう
-
access2021 VBA メソッドまたは...
-
Access VBA [リモートサーバー...
-
access vbaでフォームを開くと...
-
Accessのクエリの結果を、既存...
-
Access Error3061 パラメータが...
-
Microsoft365にAccessってあり...
-
実行時エラー3131 FROM 句の構...
-
列が255以上のCSVファイルをAcc...
-
Accessのスプレッドシートエク...
-
Access 複数条件検索の設定が上...
-
Accessでレポートを印刷する時...
-
Arduinoで温湿度と時刻を1分ご...
-
accessでlaccdbファイルが削除...
-
Accessでフォームに自動入力し...
-
Accessのリンクテーブルのパス...
おすすめ情報