MS Access:组合框列顺序问题

Posted

技术标签:

【中文标题】MS Access:组合框列顺序问题【英文标题】:MS Access : Combo Box Column order issue 【发布时间】:2016-06-02 17:34:12 【问题描述】:

我在表单上有一个组合框,并希望使用 vba 代码从表中填充。该查询有两列proc_name,然后是ID,并将组合框列数设置为2,但是当加载表单时,我首先看到ID,然后是proc_name。为什么会这样?

对于具有类似表结构的其他组合框,它们显示我在查询中定义的列顺序。

Private Sub Form_Load()

   Dim strSQL As String

   createCon

    strSQL = "Select proc_name, ID from tblProcess"

    Set objRecordset = New ADODB.Recordset
    objRecordset.Open strSQL, objConnection, adOpenKeyset, adLockOptimistic

    If Not (objRecordset.EOF And objRecordset.BOF) Then
        Set Me.cmbProcess.Recordset = objRecordset
    End If

    objRecordset.Close
    Set objRecordset = Nothing

End Sub

【问题讨论】:

这种变化会发生什么? strSQL = "Select proc_name AS f1, ID AS f2 from tblProcess" 当我使用你的查询时,它显示正确,是什么原因? 加载到组合框中时,似乎记录集列是按字母顺序处理的。我为字段名称加上了别名,以便按照我认为您想要的顺序处理它们。 哦,好的。非常感谢您的宝贵时间! 【参考方案1】:

Recordset 列加载到组合框中时,它们似乎是按字母顺序处理的(IDproc_name 之前)。

为您的SELECT 字段列表中的字段设置别名,以便按照您希望的顺序处理它们:

strSQL = "Select proc_name AS f1, ID AS f2 from tblProcess"

【讨论】:

你能帮我解决这个问题吗? ***.com/questions/37655385/…

以上是关于MS Access:组合框列顺序问题的主要内容,如果未能解决你的问题,请参考以下文章

MS Access 组合框列查找第三个表(多维查找?)

MS ACCESS 过滤器组合框所有选项

MS Access - 构建一个组合框,该组合框根据先前的组合框选择返回多个值

MS Access 2010 多列组合框自动完成

ms access 组合框刷新

MS Access 数据表不会根据组合框更新