Dichiarazione di variabili VBA
Le variabili in un linguaggio di programmazione, VBA incluso, sono l’equivalente del packaging nella manifattura. Infatti conservano e trasportano i valori che contengono.
Anche il nome di una cella, secondo questa definizione, è una variabile: conserva un dato e lo “trasporta” in una formula.
All’interno di una routine di VBA, le variabili devono essere dichiarate. La dichiarazione (non fiscale) serve per assegnare un nome e per definire il suo tipo di dato.
L’istruzione Dim permette quindi di creare una variabile VBA e di assegnare, con la clausola As, un tipo di dati o di oggetto. Nell’esempio qui sotto creiamo la variabile txt, per ospitare una stringa di testo (tipo String) e n per un numero piccolo (tipo Integer).
![Esempio di dichiarazione variabili VBA per testo e numeri](https://www.sos-excel.it/wp-content/uploads/2020/07/excel-vba-variabili001.jpg)
Assegnare e restituire dati a una variabile VBA
A questo punto per assegnare un valore alle nostre variabili utilizziamo una logica inversa rispetto a quella dell’ultimo articolo. Mettiamo nei due contenitori i valori presenti nelle celle A1 e B1 del foglio attivo.
![Assegnazione di valore a una variabile](https://www.sos-excel.it/wp-content/uploads/2020/07/excel-vba-variabili002.jpg)
Il vantaggio dell’utilizzo di una o più variabili è nella “trasportabilità“: questi due contenitori possono essere utilizzati per operazioni di base, costrutti logici oppure per restituirli all’utente in una finestra di messaggio (Message Box).
La restituzione in message box è sicuramente l’attività più semplice, ma anche la più utile per verificare la presenza e/o il valore di una variabile in una fase di debug. Esatto proprio quando qualcosa non funziona (bug) nella routine e siamo costretti a ripercorrere le sue istruzioni passo dopo passo…
Per attivare la finestra di messaggio è sufficiente la funzione MsgBox e mettere tra parentesi il messaggio, concatenando in modo corretto testo e variabili.
Nell’esempio vogliamo portare nel messaggio la variabile n, intercalata con la scritta ” è un numero “, la variabile txt e un punto interrogativo.
Il simbolo di concatenazione in VBA è sempre il simbolo & (e commerciale) e le porzioni di testo devono essere incluse tra le doppie virgolette.
Ecco l’esempio completo con la finestra di messaggio.
![Subroutine con due variabili](https://www.sos-excel.it/wp-content/uploads/2020/07/excel-vba-variabili003.jpg)
Per sperimentare direttamente la subroutine, puoi aprire l’insieme delle macro sul foglio di calcolo, scegliere la macro dall’elenco e cliccare su esegui.
![](https://www.sos-excel.it/wp-content/uploads/2020/07/excel-vba-variabili004.jpg)
Nella prossima puntata (Controllo logico VERO/FALSO) approfondiamo l’utilizzo di variabili all’interno della subroutine per risolvere il quesito nel Message Box.
Qui puoi scaricare l’esempio di routine con variabili spiegato in questo articolo.
A presto, buon lavoro e buona estate!
11.214 views
Buonasera.
Ho un foglio di lavoro in cui devo inserire delle formule per ottenere dei risultati particolari, un po complessi, e non riesco a trovare la soluzione.
Può darmi qualche indicazione?
Grazie.
Salve Cosimo, puoi darmi maggiori indicazioni? Contattami in privato qui: vitadaweb@gmail.com
Grazie!