【问题标题】:MS Access ComboBox.Column - use name instead of index?MS Access ComboBox.Column - 使用名称而不是索引?
【发布时间】:2010-08-24 20:08:05
【问题描述】:

我在 Access 2007 表单中具有多列作为行源的 ComboBox 控件。 我目前正在以这种方式从每个 ComboBox 项中获取选定的值...

value = ComboBoxName.Column(i) 'where i is the index.

我想使用列的实际名称,就像 Recordset 的...

value = ComboBoxName.Recordset.Fields("columnname")

(请注意,这在组合框的记录集上无法正常工作:它仅在第一次更改组合框后才有效)

我的问题:

  • 我可以在 ComboBox 的 Recordset 上做些什么来“使这项工作”吗?:

value = ComboBoxName.Recordset.Fields("columnname")

  • 有没有直接使用名字获取选中记录的值的方法?

  • ComboBox 或它的 Recordset 是否有一种方法可以用来通过指定列名来获取列索引?

我想避免编写函数,并且我不愿意指定将来可能会更改的列索引。

【问题讨论】:

    标签: ms-access forms combobox


    【解决方案1】:

    没有简单的方法可以做到这一点。您可以创建一个记录集,也可以为每个列名 (FirstCol=0) 为变量分配值。

    顺便说一句,为什么列会改变?如果您使用的是 select 语句,则如果更改表,则组合将失败。

    【讨论】:

      【解决方案2】:

      PFIELD = Me.Form.Combo6.Column(0, 0)

      【讨论】:

        猜你喜欢
        • 2021-01-04
        • 1970-01-01
        • 2018-03-08
        • 2013-04-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-04-07
        相关资源
        最近更新 更多