我有一个ComboBox控件,多个列作为Access 2007表单中的行源。 我现在正以这种方式从每个ComboBox项目中获取所选值...
value = ComboBoxName.Column(i) 'where i is the index.
我想使用列的实际名称和Recordset的......
value = ComboBoxName.Recordset.Fields("columnname")
(请注意,这在ComboBox'es的Recordset上无法正常工作:它仅在第一次更改ComboBox后才有效)
我的问题:
value = ComboBoxName.Recordset.Fields("columnname")
是否有一种方法可以直接使用名称获取所选记录的值?
ComboBox或它的Recordset是否有一个方法可以通过指定列名来获取列索引?
我想避免编写一个函数,我觉得在指定将来可能会改变的列索引时感觉不舒服。
答案 0 :(得分:1)
没有简单的方法可以做到这一点。您可以创建记录集,也可以为每个列名称赋值给变量(FirstCol = 0)。
顺便说一下,为什么列会改变?如果您使用的是select语句,则在更改表时,组合将失败。
答案 1 :(得分:0)
PFIELD = Me.Form.Combo6.Column(0,0)