You need to assign the results of the DoCmd.runSQL("Select * from bob") to a variable for you to have any chance of doing any thing with it.
I am however unsure if it does work.
you could also retrieve an ado(or dao) recordset and loop through it adding the items to the listbox
Function GetData(ByVal strSQL As String, strCon As String) As ADODB.Recordset
Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim cmd As New ADODB.Command
With cnn
.CommandTimeout = 2000
.Open strCon
End With
With cmd
.ActiveConnection = cnn
.CommandType = adCmdText
.CommandText = strSQL
End With
Set rs = cmd.Execute
Set GetData = rs
End Function
This is a generic function I use in access to access external data however you can modifiy it to work with access tables by using CurrentProject.ActiveConnection instead of the cnn for the cmd object.