首页 > 解决方案 > MS Access 组合框未获取行源值

问题描述

所以我有这个访问表单,它在加载事件上使用 DAO 连接连接到 MySQL 数据库。

Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim SQL As String

    Set db = OpenDatabase("", False, False, Globales.ConnString)
    SQL = "SELECT tbl1Facturas.ID, tbl1Facturas.Fecha, tbl1Facturas.Localidad_ID, tbl5Localidades.NombreLocalidad, tbl1Facturas.Suplidor_ID, tbl6Suplidores.NombreSuplidor, tbl1Facturas.Factura, tbl1Facturas.Subtotal, tbl1Facturas.[Credito al Subtotal], tbl1Facturas.[CSA IVU MUNICIPAL], tbl1Facturas.[IVU MUNICIPAL], tbl1Facturas.[Credito IVU Municipal], tbl1Facturas.[CSA IVU ESTATAL], tbl1Facturas.[IVU ESTATAL], tbl1Facturas.[Credito IVU ESTATAL], tbl1Facturas.[Total de Compra], tbl1Facturas.[Exento al IVU ESTATAL], tbl1Facturas.[Metodo de Pago], tbl1Facturas.[ID Metodo Pago], tbl1Facturas.Factura_PDF, tbl1Facturas.MetodoPago_PDF, *" _
        & "FROM (tbl1Facturas INNER JOIN tbl5Localidades ON tbl1Facturas.[Localidad_ID] = tbl5Localidades.ID) INNER JOIN tbl6Suplidores ON tbl1Facturas.[Suplidor_ID] = tbl6Suplidores.ID;"

    Set rs = db.OpenRecordset(SQL, dbOpenDynaset, dbAppendOnly)
    Set Me.Form.Recordset = rs

在那种形式中,我有一个组合框,它没有从我设置的行源属性中获取值,如下所示:

SELECT tbl5Localidades.ID, tbl5Localidades.NombreLocalidad FROM tbl5Localidades; 

我不知道我在那里做错了什么,因为当它们是访问表时,这曾经可以工作,但是现在我将表移动到 MySQL 服务器,唯一不工作的是组合框。

非常感谢所有帮助,谢谢!

标签: mysqlvbams-access

解决方案


这段代码做到了!

Dim rs2 As DAO.Recordset
Dim SQL2 As String
    SQL2 = "SELECT tbl5Localidades.ID, tbl5Localidades.NombreLocalidad FROM tbl5Localidades;"
    Set rs2 = db.OpenRecordset(SQL2, dbOpenDynaset, dbReadOnly)

    With rs2
    .MoveFirst
    Do Until .EOF
    Text18.AddItem !ID & ";" & !NombreLocalidad
    .MoveNext
    Loop
End With

推荐阅读