我所做的是将复选框附加为查询的附加列,然后用于创建记录集。然后将此记录集分配给组合框控件。
以前,我可以很好地引用组合框中未显示的选定行的列。但是,无论我尝试什么,当我尝试引用这些复选框时,我得到的只是一个空值。
为了显示:
Set rs = db.OpenRecordset("SELECT AG.Acttype, AG.ActGroupID, AT.HasLots, AT.IsLotSrce, " _
& "AT.HasStructs FROM ActivityGroup AG, ActivityType AT WHERE (" _
& FormatToSQLVal(Me![WizardSubformDisplay].Form![ActLinkedProjInput].Column(1)) _
& " = AG.ProjectID) AND (AG.Acttype = AT.ActType);")
Set Me![WizardSubformDisplay].Form![ActTypeInput].Recordset = rs
(在这种情况下,还有以下额外的修补,不会对其他不处理复选框的情况造成麻烦)
Me![WizardSubformDisplay].Form![ActTypeInput] = Me![ActTypeName]
Me![WizardSubformDisplay].Form![ActTypeInput].Locked = True
(我将组合框设置为特定选项,然后将其锁定)
Me![WizardSubformDisplay].Form![ActTypeInput].Column(2),
Me![WizardSubformDisplay].Form![ActTypeInput].Column(3),
Me![WizardSubformDisplay].Form![ActTypeInput].Column(4)
如果选中该框,则所有返回 null,而不是 -1,否则返回 0。