試してみました。基本的には「ダイナセット (矛盾を許す)」で良いようです。いくつか留意点ももあります。
フォームに利用したSQL文は
SELECT テーブルA.ID, テーブルA.氏名, テーブルA.生れ年, IIf(Year(Date())-[生れ年]>59,60,IIf(Year(Date())-[生れ年]>19,20,10)) AS 年齢, テーブルB.項目
FROM テーブルA, テーブルB
WHERE (((IIf(Year(Date())-[生れ年]>59,60,IIf(Year(Date())-[生れ年]>19,20,10)))=[テーブルB].[年齢]))
ORDER BY テーブルA.ID;
テーブルAのID順に表示するようになっているのは、これなしだと順番が変わって試験がやりにくかったためです。また生まれ年が切りの良い数字でなくても、三分類のどれかに入るようにしています。
生まれ年を変更した際に「少年/成人/還暦」が直ちに変わるためには、当該テキストボックスの、変更後イベントに「再クエリ」を指定します。
お礼
すごい!! 出来てしまいました。こんな方法があったのですね。 私の質問のように、計算結果に他のテーブルフィールドを結合させたい場合って、結構あるのではないでしょうか? これで「矛盾を許す」から解放でスッキリです。 フォームで使うので、このコンボボックスにはフォーカスが入らないようにし、又ドロップダウンの矢印も隣のフィールドで隠すと、見た目も良くなりました。 ありがとうございました。 感謝致します。