Una famiglia di sistemi di gestione per database relazionali di Microsoft progettati per semplificare l'uso.
Siamo all'abc del Visual Basic.....
Nella mia semplice risposta era tutto implicito, vediamo di esplicitare.
Se da una routine (Sub o Function), vuoi richiamare un'altra routine e vuoi che variabili implementate nella prima siano *viste* dalla seconda, hai due strade.
1- Passare le variabili *direttamente* dalla prima alla seconda routine:
Public Sub Uno()
Dim s As String '<<=== Dichiaro la variabile
s = "Mauro" '<<===Implemento la variabile
Due (s) '<<===Chiamo la seconda routine e le passo la variabile (argomento))
End Sub
Public Sub Due(ByVal myString As String) '
MsgBox "Ciao " & myString
End Sub
In questo caso si dice che la seconda routine ha un parametro (myString) e che quando la richiami le passi un argomento (la s all'interno della parentesi ). I parametri possono essere più di uno e tutti si aspettano il relativo argomento, a meno che i parametri non siano dichiarati Optional (opzionali). Gli argomenti devono essere dello stesso tipo dichiarato nel parametro (string con string, long con long, ecc.).
2 - Dichiarare le variabili *all'esterno* delle routine.
Privates As String '<<===Dichiarazione della variabile all'esterno della routine e visibile da tutte le routine presenti nel modulo di codice
Public Sub Uno()
s = "Mauro" '<<===Implementazione della variabile
Due <<===Chiamo la seconda routine
End Sub
Public Sub Due()
MsgBox "Ciao " & s '<<=== La variabile è vista senza che debba fare nulla
End Sub
In questo caso, come già scritto, la variabile è *vista* da tutte le routine del modulo e una volta implementata posso utilizzarla.
Nel caso di variabile che debbano essere viste non solo dallo specifico modulo ma da tutto il programma, le variabili vanno posizionate in un Modulo standard e dichiarate Public.
Quando si usano variabili esterne alle routine, pensare sempre BENE a tutto lo sviluppo dell'applicazione. Le variabili sono si viste da tutte le routine, ma possono essere anche MODIFICATE da tutte le routine.
Nota. Sandro passa l'argomento al parametro senza utilizzare le parentesi. Personalmente preferisco passarlo all'interno delle parentesi. Solo questione di forma.
Vedi anche: