こんにちは。初歩的な質問なのですがお願いいたします。
テーブルのデータを1レコードずつ表示するフォームを作成しました。
そのフォームに年月日を、年、月、日、に分けて表示したいのですが、
テーブルには「年月日」フィールドしかないため、テーブルを参照して年、月、日を分けるクエリを作成しました。
そのクエリからフォームに年、月、日を表示するようにしたのですが
フォームに次のレコードのデータを表示しても、年月日だけ最初の1レコード目のデータを参照し続けます。
そこで、Dlookup を使ってフォームのIDフィールドと同じIDのレコードを参照するようにしたのですが
エラーになってしまいます。
作成したものは以下のようになります。
テーブルA
ID
年月日
クエリB
IDフィールド → テーブルAのIDフィールドを参照
年月日フィールド → テーブルAの年月日フィールドを参照
年フィールド → 年:Year([年月日]) ←クエリBの年月日フィールドから年だけを取り出している
月フィールド → 月:Month([年月日]) ←クエリBの年月日フィールドから月だけを取り出している
日フィールド → 日:Day([年月日]) ←クエリBの年月日フィールドから日だけを取り出している
フォームC
ID → テーブルAのIDフィールドを表示
--------------------年月日が1レコード目のデータしか表示されない時の書き方-----------------------
年 → =DLookUp("年","クエリB") ← クエリBの年フィールドを表示
月 → =DLookUp("月","クエリB") ← クエリBの月フィールドを表示
日 → =DLookUp("日","クエリB") ← クエリBの月フィールドを表示
↑エラーにならないが、最初の1レコード目のデータしか表示しない
-----------------------------年月日がエラーになる時の書き方------------------------------------
年 → =DLookup("[年]","[クエリB]","[ID]=" & Forms![フォームC]![ID]) ← エラーになる
月 → =DLookup("[月]","[クエリB]","[ID]=" & Forms![フォームC]![ID]) ← エラーになる
日 → =DLookup("[日]","[クエリB]","[ID]=" & Forms![フォームC]![ID]) ← エラーになる
↑フォームCに表示したIDと、クエリBのIDが同じレコードの 年、月、日を表示しようとした書き方
IDに対応した年月日を表示したいのです。
ご教授よろしくお願いいたします。

回答1件
あなたの回答
tips
プレビュー