【发布时间】:2013-08-30 17:02:42
【问题描述】:
我对此有点发疯了,可能有一个超级简单的解决方案正盯着我看,但我只是没有看到它。
这是相关的表格和字段。
tblBooks (BookID (PK), Title, Author, Publisher)
tblBookCategories (BookID (PK), CategoryID (PK), ReportID)
refCategories(CategoryID (PK), CategoryName)
tblReports (ReportID (PK), ReportDate)
我目前有一个用于将书籍输入 tblBooks 的表单。有一个子表单,它有一个组合框,允许选择要分配给书籍的类别。它是一个连续的子表单,因此如果多个类别与特定书籍相关,则可以在子表单上指示多个类别。组合框填充了来自 refCategories 的类别。这本书存储在 tblBooks 中,而 tblBookCategories 存储分配给特定书籍的类别。
定期发送报告。发送报告时,会在 tblReports 中创建一个条目,并在 tblBookCategories 中的相关条目的 ReportID 字段中填充报告的 ID。所以在 tblBookCategories 中,ReportID 字段有两个选项:报告编号或空字段。
我想做的是在我的 Book Entry 表单中,在连续子表单中有行的地方,更改它,以便将类别选择器组合框替换为类似“已发送”的标签呸呸呸”。因此,如果一本书被分配了四个类别,并且其中一个类别是在报告中发送的,那么它将在子表单中列出 Category ComboBox、Category ComboBox、“Sent Blah Blah”、Category ComboBox。
我希望这是有道理的。我开始怀疑子表单不能像这样工作,因为似乎我在代码方面所做的任何事情都会影响连续子表单的所有记录,而不仅仅是我试图与之交互的记录。
【问题讨论】:
-
您如何选择/引用子表单中的单个记录?我认为通过引用它然后使用 if 语句,您应该能够做任何必要的事情,包括修改组合框下拉菜单。
-
表单使用 tblBooks 作为其记录源。该子表单当前使用 tblBookCategories 作为其记录源。组合框本身引用 refCategories。
标签: vba ms-access combobox subform