Allora, ho provato a spostare l'inizializzazione della connessione e del recordset nel form_activate, e li richiudo nel form_deactivate:
codice:
Private Sub Form_Activate()
CnOrdNCli.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=GetsMag.mdb;"
CnOrdNCli.CursorLocation = adUseClient
qOrdNFor = "SELECT * FROM Fornitori"
RsOrdNFor.Open qOrdNFor, CnOrdNCli, adOpenDynamic, adLockOptimistic
If (RsOrdNFor.BOF = True And RsOrdNFor.EOF = True) Then
MsgBox "Nessun Fornitore esistente per creare un ordine"
Else
With RsOrdNFor
.MoveFirst
While Not .EOF
cmbCliente.AddItem !CognomeNome
cmbCliente.ItemData(cmbCliente.NewIndex) = RsOrdNFor("IDFornitore").Value
.MoveNext
Wend
End With
RsOrdNFor.Close
End If
End Sub
e
codice:
Private Sub Form_Deactivate()
RsOrdNFor.Close
CnOrdNCli.Close
End Sub
Ma in questo caso, se provo ad entrare e uscire dal form (senza fare altre operazioni) mi da "ERRORE di run-time 3704"-L'operazione non è consentita se l'oggetto è chiuso".
Questo msg me lo da in fase di esecuzione, ma non se faccio il debug.
Idee?
Grazie.