Use this code to fill a list box with the values from a database table. The first field in the query provides the ItemData for the list:
Call FillList(dbase, "select personno, " & _ "personname from tblperson order by " & _ "personname;", lstperson)Sub FillList(thedb As Database, thesql As _ String, THELIST As Control)On Error Resume Next THELIST.Clear Call FillListAp(thedb, thesql, THELIST)End SubSub FillListAp(thedb As Database, thesql As _ String, THELIST As Control) On Error Resume Next Dim theset As Recordset Dim inlist As String Dim I As Integer Set theset = thedb.OpenRecordset(thesql, _ dbOpenSnapshot) While Not theset.EOF For I = 1 To theset.Fields.Count - 1 If I = 1 Then If IsNull(theset.Fields(I)) Then inlist = "Null" Else inlist = theset.Fields(I) End If Else If IsNull(theset.Fields(I)) Then inlist = inlist & Chr(9) & "Null" Else inlist = inlist & Chr(9) & _ theset.Fields(I) End If End If Next I THELIST.AddItem inlist THELIST.ItemData(THELIST.NewIndex) = _ theset.Fields(0) theset.MoveNext Wend theset.CloseEnd Sub