
Select Caseのフレームで、レコードソース(クエリ)を選択し、
そのソースを基にDoCmd.OpenFormする方法がわかりません。
よろしくお願いします。
----------------------------------------------------
Dim strSource As String
Dim Q1, Q2 As String
Dim stDocName As String
Dim フォーム1 As Form
stDocName = "フォーム1"
Q1 = "クエリ1"
Q2 = "クエリ2"
Select Case フレーム1
Case 1
strSource = Q1
Case 2
strSource = Q2
End Select
'stDocName.RecordSource = strSource '-----この文はこの位置でよいのでしょうか?
DoCmd.OpenForm stDocName, acFormDS
----------------------------------------------------
クエリ1,クエリ2は基になるテーブルが違いますが、フィールドは同一にしてあります。
ですのでフォーム1には、対応するテキストボックスは用意してあります。
No.1ベストアンサー
- 回答日時:
<1>
Private Sub コマンド0_Click()
DoCmd.OpenForm "フォーム1", acFormDS
Forms("フォーム1").RecordSource = "クエリ" & Me.フレーム1
End Sub
<2>
Private Sub コマンド1_Click()
DoCmd.OpenForm "フォーム1", acFormDS, , , , , "クエリ" & Me.フレーム1
End Sub
' ------------------------------------------
' [フォーム1] ロード時にレコードソース設定
' ------------------------------------------
Private Sub Form_Load()
If Len(Me.OpenArgs & "") > 0 Then
Me.RecordSource = Me.OpenArgs
End If
End Sub
まあ、好き好きでしょうが<2>がOKのバージョンであれば<2>がお勧めです。
<補足>
ただ、WhereCondition を使うのが一般的かと思います。
全く異なるクエリであれば、それぞれに対応したフォームを用意した方がシンプルでは・・・。
ありがとうございました。
この方法は、確かに一般的ではないようですね。
質問に際し省略したのですが、条件は6個あり、また抽出したものを、
Excel出力、印刷と使用するため、この方法を取ろうと考えた次第です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
みんなに挑戦してほしい「色彩検定」
これまで多くの方々が受検したが「色彩検定」。その目的や活用法は人それぞれ。今回は、色彩検定に影響を受けた男女3名にインタビュー。
-
ACCSESS2013VBA フォームのレコードソースを変更する
その他(データベース)
-
Access サブフォームのレコードソースを変更するには
Access(アクセス)
-
Access サブフォームでの選択行の取得
その他(データベース)
-
4
Accessで、フォームからフォームへ値を引き継ぐやり方
Access(アクセス)
-
5
テキストボックスにクエリ結果を表示させたい
その他(データベース)
-
6
親フォームからサブフォームのレコードソースを設定
Access(アクセス)
-
7
ACCESSでコントロールソースの変更
Access(アクセス)
-
8
アクセスでテキストボックスの値が空白だったら
Access(アクセス)
-
9
ACCESS──メインフォームでサブフォームのレコード件数をカウントしたい
Access(アクセス)
-
10
サブフォームに対してGoToRecordするには?
その他(Microsoft Office)
-
11
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
12
access vba 開いていないフォームのプロパティを編集したい
Access(アクセス)
-
13
ACCESSでVBAから選択クエリの抽出条件を指定したい
Access(アクセス)
-
14
FindFirst を複数条件で検索
Visual Basic(VBA)
-
15
Accessのフォーム上にレコード数とレコード番号の表示
その他(データベース)
-
16
アクセスVBAのMe!と[ ]
Access(アクセス)
-
17
アクセスのフィールド表示を2段にする方法・抽出の方法
Access(アクセス)
-
18
アクセス レコードセットを更新できません
その他(データベース)
-
19
サブフォームの新規レコードに移動したい アクセス
Access(アクセス)
-
20
YES/NO型の値
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
Access 別フォームへの再クエ...
-
5
ACCESSのフォームからデータの...
-
6
「メソッドまたはデータメンバ...
-
7
選択したチェックボックスのみ...
-
8
ACCESSで入力フォームをHTMLフ...
-
9
アクセスのフォームのビューが...
-
10
Access2002 フォームを閉じるた...
-
11
写真入りデータベースの作成
-
12
ACCESSでのテキストボックスの...
-
13
Accessフォームのテキストボッ...
-
14
アクセスでの項目追加について...
-
15
帳票フォームに全レコードを表...
-
16
Access:yesの時は画像を表示、...
-
17
テキストボックスの値をテーブ...
-
18
access レコードソースを選択...
-
19
テキストボックス(アクセス)内...
-
20
Access フォーム上でコンボボッ...
おすすめ情報
公式facebook
公式twitter