我正在学习如何使用Access,虽然我已经设法在我尝试做的大部分事情中糊里糊涂,但我还有一些东西。能够弄明白该怎么做。
我有两个表格和相应的表格。在frmProducts中是ColorOptions,一个多选组合框,包含产品可能的颜色选项列表,以及Design,一个名称的文本控件。在frmCustomers中是OrderDesign,一个组合框,包含来自tblProducts的项目列表,以及OrderColours,一个组合框。
现在,这就是问题所在:我希望OrderColours显示tblProducts中颜色选项的列表,但我无法弄清楚如何。我可以让它显示价值,但它不是一个项目列表,只有一个带有'列表的条目' (例如单个条目阅读"布朗,红色,绿色")。我希望用户能够从该子集中选择一个项目。
理想情况下,我希望在不弄乱VBA或任何高级SQL的情况下执行此操作,但如果不可行,那么这样做也很好。我认为问题可能是包含该产品颜色的Colors字段存储为文本,但我不确定如何存储它,因为没有'数组'或者'列出'数据类型的选项。
很抱歉,如果我还不够清楚,或者这是在错误的潜艇上发布的。我是Access的初学者,所以我可能还不够清楚或者使用了错误的术语。任何帮助将不胜感激。
答案 0 :(得分:1)
我不太确定我完全理解你想要这个设置,所以我假设如下。如果这不对,请纠正我:
因此,您需要使用组合框OrderColours在OrderProducts中显示所选productDesign值的productColours列表。
现在,按如下方式设置组合框OrderDesign:
和OrderColour:
并向OrderDesign提供以下事件AfterUpdate:
Private Sub OrderDesign_AfterUpdate()
Me.OrderColour = Null
Me.OrderColour.Requery
Me.OrderColour = Me.OrderColour.ItemData(0)
End Sub
如果您的组合框受到约束,您可能还需要考虑在记录之间移动时会发生什么:
Private Sub Form_Current()
Me.OrderColour.Requery
End Sub
Form_Current事件中的应该可以解决问题。