我在表单上有一个组合框,带有未绑定的列[系统类型]。我在Access的Macro Builder中工作,尝试设置If语句。我的最终目标是打开一个表单,取决于未绑定的列。
我似乎无法弄清楚如何引用该列。我试过[Forms]![My Form]![My Combo] .Column(1),但是我得到一个无法识别的函数错误。我也尝试过在线搜索的变体。
如何在Access 2010的MacroBuilder中引用组合框中的未绑定列以获取If语句?
感谢。
答案 0 :(得分:0)
如果一个组合只有一列,它是列(0),或者只是[MyCombo],我想你错过了有两种类型的绑定与组合,它可以绑定到表中的一个字段你可以有一个绑定列,这是组合返回的值。
Row Source : SELECT Atext FROM ATable
Bound Column : 1
Column Count : 1
MsgBox Me.myCombo ''Atext
Row Source : SELECT ID, Atext FROM ATable
Bound Column : 1
Column Count : 2
MsgBox Me.myCombo ''ID
MsgBox Me.MyCombo.Column(1) ''Atext
Row Source : SELECT ID, Atext FROM ATable
Bound Column : 2
Column Count : 2
MsgBox Me.myCombo ''atext
MsgBox Me.MyCombo.Column(0) ''ID
所以要从这个表单中打开一个表单:
DoCmd.OpenForm "aForm",,,"ID=" & Me.MyCombo ''First example
从另一种形式
DoCmd.OpenForm "aForm",,,"ID=" & Forms!AnotherForm.MyCombo ''First example
DoCmd.OpenForm "aForm",,,"Atext='" _
& Forms!AnotherForm.MyCombo.Column(1) ''Second example