Load a combo box using DAO

By | 2019-10-04

Another, older method of loading a combo box, this time via a DAO connection.

Public Sub LoadCombo()
    Dim MyDatabase As DAO.Database 'Use this method if you are also using ADO
    Dim MyRecordset As DAO.Recordset ' Use it anyways save an error or Type Mismatch
    Dim MySql As String

    MySql = "SELECT DISTINCT [Item] FROM [Table] WHERE [Item]='" & strVar & "'"

    Set MyDatabase = DBengine.Workspaces(0).OpenDatabase("C:\MyData.mdb")
    Set MyRecordset = MyDatabase.OpenRecordset(MySql, DbOpenSnapShot)
    Do While Not MyRecordset.EOF
        If Not IsNull(MyRecordset("Item")) Then
            Combo1.Add MyRecordset("Item")
        End If
        MyRecordset.MoveNext
    Loop
    '* Clean Up
    MyRecordset.Close
    MyDatabase.Close
    Set MyRecordset = Nothing
    Set MyDatabase = Nothing
    '* Load the first record in combo
    If Combo1.ListCount > 0 Then
        Combo1.ListIndex = 0
    End If
End Sub

Author: dwirch

Derek Wirch is a seasoned IT professional with an impressive career dating back to 1986. He brings a wealth of knowledge and hands-on experience that is invaluable to those embarking on their journey in the tech industry.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.