アドレスを格納する Access 2010 のデータベースに取り組んでいます。人物と住所を別々に保存し、他の 2 つのテーブルを介してそれらを関連付けることができるように、慎重にテーブルを設計しました (人物間の関係も、住所とは別に保存する必要があります)。
次の表があります (この質問では、 と に焦点を当てていますPERSON
) RELATIONSHIP
。
PERSON RELATIONSHIP ADDR_REL ADDR
------------ ------------ ----------- -----------
(PK)PERSON_ID (FK)PERSON_ID (FK)RELATIONSHIP_ID (PK)ADDR_ID
FIRST (K)RELATIONSHIP_ID (FK)ADDR_ID ADDR_LINE1
LAST RELATIONSHIP_TYPE (PK)ADDR_REL_ID ADDR_LINE1
(PK)REL_PK ...
VBAを使用せずに(可能であれば)、フォームに特定のを表示し、一致する他PERSON
のsを表示するサブフォームを作成したいが、元のレコードは表示しない(親フォームに表示されているレコード)サブフォームの結果セットで。 PERSON
RELATIONSHIP
PERSON
参考までに: 私は VBA でこれに対する解決策を自分で構築することができますが、それなしでこれをやってのける方法であるように思われます。
非表示フィールド、リンクされたサブフォーム、およびカスタム クエリを試しましたが、関係にあるすべての人が常にサブフォームに表示されます (または結果がまったく表示されないか、パラメーター プロンプトが表示されます)。コードを書かずにこれを打ち負かす方法は本当にありませんか?