MS ACCESS:用另一个表中的数据填充子表单

Posted

技术标签:

【中文标题】MS ACCESS:用另一个表中的数据填充子表单【英文标题】:MS ACCESS: Populate a subform with data from another table 【发布时间】:2011-11-14 21:38:47 【问题描述】:

我的 Access 数据库中有三个表。

**Table: Participants** 
ParticipantID   
FirstName   
LastName    
Address
Phone
SiteNameLookup  
YearLookup

**Table: DailyWorkshops**   
WkshpID 
WkshpDate   
AorB    
SiteStaff   
Artists 
Activities

**Table:  ParticipantAttendance**   
ParticipantID   Participants.ParticipantID
FirstName   Participants.FirstName
LastName    Participants.LastName
WkshpID DailyWorkshops.WkshpID
Level   *(here I have a lookup to fill in HALF/PARTIAL/FULL, not just yes/no)*

我已成功创建了一个名为 DailyWorkshopsForm 的表单,它有一个 ParticipantAttendance 的子表单。这个子表单是完全空白的。

我现在如何从“参与者”表单中填充“参与者出勤”子表单,以便我只需检查每个参与者的出勤水平?我可以弄清楚如何仅查找 Participant.ParticipantID 或仅查找 Participant.FirstName 或仅查找 Participant.LastName ---但查找一个不会自动填写其他...所以我最终可以查找 ID #但没有得到它的名字。


编辑:澄清问题和问题。

谢谢...当我看更多时,我意识到 ParticipantAttendance 不是子表单应该是...这只是出勤数据最终应该存在的表格。我需要的子表单是这样的:

WkshpID ParticipantID   FirstName  Lastname  Level

6   10-45   Bart    Simpson     Full

6   10-47   Ned Flanders    Half

6   10-49   George  Washington  None

6   10-50   Michelle Obama          Full

7   10-45   Bart    Simpson         Full

7   10-47   Ned Flanders    Full

7   10-49   George  Washington  Half

7   10-50   Michelle Obama          None

8   10-45   Bart    Simpson          Full

8   10-47   Ned Flanders    None

8   10-49   George  Washington  Half

8   10-50   Michelle  Obama     Half`

【问题讨论】:

【参考方案1】:

如果您查看子表单的属性,您会发现有一种方法可以指示父表单和子表单之间的“外键”关系(查看“数据”、“链接主字段”到“链接子字段”)。在您的情况下,您需要链接两个表的字段 WkshpID。

然后只需在您的子表单中使用普通 SQL 查询 SELECT * FROM ParticipantAttendance,只要您导航到其他数据行,MS Access 就会使用父表单中的外键关系自动施加 WHERE 条件并适当更新你的父表单。

【讨论】:

谢谢 - 不是我想要的,但这帮助我更多地思考它并朝着正确的方向前进。

以上是关于MS ACCESS:用另一个表中的数据填充子表单的主要内容,如果未能解决你的问题,请参考以下文章

根据 MS Access 中的用户过滤子表单

MS Access - 从表中填充复选框列表

MS Access 2003 - Unbound Form 使用 INSERT 语句保存到表中;子表单呢?

MS Access 中的子表单

MS-Access - 从超链接数据单击打开表单

复制 MS Access 主表单记录,同时将父子链接保留在子表单中