いつも回答いただきましてありがとうございます。
またつまづいてしまったので質問させてください。
Aのテーブルから抽出されたレコードA-1の,あるフィールドを,Bテーブルが元になる別フォームの特定のテキストボックスに反映させたいのですが,可能でしょうか。
また,AテーブルとBテーブルにはリレーションシップが設定されていますが,抽出されたレコード情報A-1を基に,別フォームにはレコードを抽出できますでしょうか。
別フォームのすべてのテキストボックスに反映させようとしてしまう方法しか見つからず……
お手数をかけますが方法をご教示いただけますでしょうか。
内容
テーブルT_案件からF_案件詳細にレコードを抽出し,同画面にボタンcmd行動履歴OPENを設置しています。T_案件にはフィールド「依頼者」「案件名」があり,F_案件詳細に抽出されるようになっています。
また,テーブルT_行動履歴に入力するためのF_行動履歴のフォームヘッダーには,F_案件詳細で抽出されたフィールド「依頼者」「案件名」を反映し表示しておくための「txt依頼者」と「txt案件名」を配置,
フォーム詳細にはT_行動履歴への入力用のテキストボックスがありますが,こちらにはレコードを反映させたくありません。
2つのテーブルはT_案件にある案件IDでリレーションシップを設定しています。
情報が不足しているようであればお教えください。
何卒宜しくお願いいたします。
### 追記
作成したクエリです。
下記クエリで確かに依頼者・案件名はでました。ありがとうございます。
SQL
1SELECT T_行動履歴.行動ID連番, T_行動履歴.行動ID, T_行動履歴.日付,T_行動履歴.開始時間, T_行動履歴.終了時間, T_行動履歴.記録者, T_行動履歴.行動種別, T_行動履歴.内容, T_行動履歴.案件ID, T_案件.依頼者ID, T_案件.案件名ID, 2FROM T_案件 RIGHT JOIN T_行動履歴 ON T_案件.[案件ID] = T_行動履歴.[案件ID];
ただ,もうしわけありません,やりたいことの言葉がたりていない質問をしてしまいました。
◆T_案件 から抽出したレコードと紐づいた依頼者・案件名を F_行動履歴 ヘッダーに表示する
かつ
◆F_行動履歴 詳細には T_案件 で抽出したレコード(案件ID)に紐づいた行動履歴のレコードを抽出したい(新規レコードの追加もしたい)
のでした。言葉足らずで申し訳ありません。
例)
T_案件 から案件IDが「1」のレコードを抽出して,その状態で F_行動履歴 を開くと
ヘッダーに依頼者・案件名が表示され,詳細にはあらかじめ案件ID「1」が入力された状態のT_行動履歴の帳票レコードがフォームで表示されている
伝わりますでしょうか…
宜しくお願いします。
追記2 現在のコード
教えていただいたように下記を記述しました。
が,「このオブジェクトに値を代入することはできません。」とエラーになってしまいました。
AccessVBA
1 2Option Compare Database 3Option Explicit 4 5Private Sub Form_Open(Cancel As Integer) 6 With Forms!F_案件詳細 7 Me.txt依頼者ID = !依頼者ID 8 Me.txt案件名ID = !案件名ID 9 Me.案件ID.DefaultValue = !案件ID 10 Me.Filter = "案件ID=" & !案件ID '数値型の場合 11 Me.FilterOn = True 12 End With 13End Sub
依頼者ID,案件名ID,はどちらのテーブルでもテキスト型。案件IDのみどちらも数値型です。
デバッグでカーソルを合わせると F_案件詳細 の依頼者IDや案件IDは参照できているようです。
下記イミディエイトウインドウにて
?Me.txt依頼者ID = !依頼者ID Null ?Me.txt依頼者ID Null ?!依頼者ID K1001 '正常に参照できているようです ```---
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/12/13 04:21
2019/12/13 04:26
2019/12/13 04:27
2019/12/13 04:50
2019/12/13 05:05
2019/12/13 05:21
2019/12/13 05:26
2019/12/13 05:56 編集
2019/12/13 05:58
2019/12/13 06:02
2019/12/13 06:05
2019/12/13 06:09