Sto convertendo un vecchio sw VB6 per utilizzarlo su win8.1. Gestiva un DB a 1 tabella con ADO. Per adattarlo a win8.1 sono stato costretto a riesumare il vecchio DAO. Ora funziona tutto, fuorché il ripopolamento della dbgrid, quando seleziono i records con una sql. La dbgrid ed alcuni campi testo sono associati al controllo Data. Finché Data1 è caricato con tutta la tabella, tutto va bene: se eseguo sql, dbgrid si ridisegna con il nr di righe corretto, ma mostra dati solo nella prima colonna chiave (ID). Su DBgrid non si può + scrivere. Sarà un problema di compatibilità con win 8.1? Oppure ho dimenticato qualcosa?
Grazie.

Private Sub Combo6_Click()
Dim Scheda1 As String
Dim SchedaNum As Integer
Dim numrec2 As Integer
Select Case OrdinaPerNome
Case Is = True
Scheda1 = Left(Combo6.Text, 4)
Data1.Recordset.Close
Data1.RecordSource = "Select * From dipinti where left(Autore,4) = '" & Scheda1 & "'"
Case Is = False
SchedaNum = Val(Combo6.Text)
Data1.RecordSource = "Select * From dipinti where ID = " & SchedaNum & ""
End Select
Data1.Refresh
Data1.Recordset.MoveFirst


'--------------------------------------PROVA 1


'DBGrid1.DataSource = Data1 'QUI errore 430: class does not support automation or....ecc...
'-------------------------------------PROVA 2
DBGrid1.AllowUpdate = True
DBGrid1.Row = 0
DBGrid1.Col = 1
DBGrid1.Text = Data1.Recordset("Autore").Value
Debug.Print DBGrid1.Text ' nella cella indicata viene scritto il nome dell'autore
' anche nella finestra di debug
' però scompare appena clicco su next, first, ecc...
numrec2 = Data1.Recordset.RecordCount
Label15.Caption = numrec2
End Sub