Hola
Spero di riuscire a farmi capire.
Dovrei intervenire sulla struttura di diversi database la cui struttura è identica ma riguardano anni diversi e quindi nomi diversi.
Ho creato alcune routine in modo da poter ciclare il lavoro.
Nella dichiarazione iniziale inserisco questa riga in modo sia valida in tutto il form
codice:
Dim MyDBAnno As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source = " & pathMDb & nameMdbAnno)
eseguo poi un ciclo in cui cambio il valore della variabile nameMbdAnno
codice:
For X = 2003 To Year(Now)
nameMdbAnno = "anno_" & Trim(Str(X)) & ".MDB"
Dim MyDBAnno As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source = " & pathMDb & nameMdbAnno)
If File.Exists(pathMDb & nameMdbAnno) Then
MyDBAnno.Open()
'..... routine per modifica struttura
MyDBAnno.Close()
End If
Next X
Nel momento in cui arrivo ad eseguire le routine per la modifica struttura ottengo l' errore: "ExecuteScalar richiede una oggetto Connection aperto e disponibile. Lo stato attuale della connessione è chiuso."
La cosa strana è che se non vado a cambiare la variabile nameMdbAnno (che rimane quella dell'anno attuale dichiarata a livello globale di progetto) il tutto funziona.
Avete qualche suggerimento?
Grazie