Hai due mdb, quindi la stessa connessione non puoi utilizzarla se
prima non la chiudi. Ma Devi chiudere prima il recordset associato
alla connessione stessa.

Il sistema più veloce, non il migliore, può essere quello di avere due
connessioni e due recordset.

codice:
Private Sub Combo1_Click() 
With Cn1 
.ConnectionString = "Provider = Microsoft.Jet.OleDB.4.0;" & _ 
"Data Source =" & App.Path & "\elenco.mdb" 

.ConnectionTimeout = 5 
.CursorLocation = adUseClient 
.Mode = adModeShareDenyNone 
.Open 
End With 
With Rs1 
.ActiveConnection = Cn1 
.LockType = adLockOptimistic 
End With 
Rs1.Open "SELECT * FROM elenco WHERE Sommatotale = '" & Combo1.Text & "'" 
Set DataGrid2.DataSource = Rs1


With Cn2 
.ConnectionString = "Provider = Microsoft.Jet.OleDB.4.0;" & _ 
"Data Source =" & App.Path & "\medici.mdb" 

.ConnectionTimeout = 5 
.CursorLocation = adUseClient 
.Mode = adModeShareDenyNone 
.Open 
End With 
With Rs2 
.ActiveConnection = Cn2 
.LockType = adLockOptimistic 
End With 

Rs2.Open "SELECT * FROM medici WHERE data= '" & Combo1.Text & "'" 

Set DataGrid1.DataSource = Rs2

End Sub


Ciao,