Ho fatto quello che mi ha scritto:

sql = "SELECT * FROM Anagrafica where ID = " & Me.cboClienti.ItemData(Me.cboClienti.ListIndex) ORDER BY Cognome ASC

Ma purtroppo mi restituisce questo errore:

Errore di sintassi.

Personalmente credo che il mio problema sta nella routine di carimento dei dati, questa:

Function RiempiComboPazienti()

Dim dbsDati As Database
Dim rstAnagrafica As Recordset
Dim sql As String
Dim Anagrafica As Recordset
Dim riga As Long


Set dbsDati = OpenDatabase(PathDatabase & "database\dati.mdb")
Set rstAnagrafica = dbsDati.OpenRecordset("Anagrafica")

Set dbsComuni = OpenDatabase(PathDatabase & "database\Comuni.mdb")
Set rstComuni = dbsComuni.OpenRecordset("Comuni")
rstComuni.Index = "COMUNI2L"


Do While Not rstAnagrafica.EOF = True
cboClienti.AddItem rstAnagrafica!Cognome & " " & rstAnagrafica!Nome
cboClienti.ItemData(cboClienti.ListCount - 1) = rstAnagrafica!ID
rstAnagrafica.MoveNext
Loop

End Function


Perchè già da qui carica le voci del database nel combo NON in ordine alfabetico.

Grazie per l'aiuto.