Ho provato ad adattare il mio codice con gli esempi del link che mi hai indicato ma, a strKey = CStr(fld(0).Value), mi da il seguente errore:
"Object Variable or With block variable not set"

codice:
Private Sub Command1_Click()

 Dim itm As ListItem
 Dim sItm As ListSubItem
 Dim fld As ADODB.Field
 Dim strKey As String

'specifica il tipo di layout della listview
 ListView.View = lvwReport

 Call connetti
    
 'aggiunge i nomi delle colonne
 ListView.ColumnHeaders.Add Text:="Ora Inizio"
 ListView.ColumnHeaders.Add Text:="Nome Trasmissione"
 ListView.ColumnHeaders.Add Text:="Canale"
  
 
 Rs.Open "Select OraInizio, NomeTrasmissione, Canale from epg ORDER BY Gradito"
'aggiunge le voci in elenco
   
    Do While Not Rs.EOF
    
 strKey = CStr(fld(0).Value)
    strKey = "K" & strKey

    Set itm = ListView.ListItems.Add(Key:=strKey, Text:="fld(1).Value")    'riempie la listbox coi nomi
        Set sItm = itm.ListSubItems.Add(Key:=strKey, Text:="fld(1).Value")
        Set sItm = itm.ListSubItems.Add(Key:=strKey, Text:="fld(1).Value")
    
    Rs.MoveNext
  Loop

    Rs.Close
AIUTO!!!
LADY BLU...PENSACI TU!!!!