Categories: Office

Il Linguaggio VBA di Excel

Il linguaggio VBA ( Visual Basic for Application ) di Excel non è diverso da quello degli altri strumenti della suite Office, quello che cambia è l’approccio allo sviluppo, infatti in questo caso occorre sapersi districare tra le varie celle come se stessimo giocando ad una battaglia navale.
Il concetto principale su cui dobbiamo ragionare è lo “sheet”, ossia il foglio di lavoro. In Excel possiamo avere tutti i fogli di lavoro che vogliamo, per lavorarci sopra possiamo referenziarli tramite un array che ha come indice il numero progressivo del foglio oppure il suo nome. Ad esempio per scrivere il valore 10 sulla cella “C3” del primo foglio dobbiamo scrivere:

Worksheets(1).Cells(3, 3) = 10 oppure Worksheets(“Foglio1”).Cells(3, 3) = 10

Molto semplice, ci si rende subito conto quanto sia facile poter fare dei calcoli sull’intero foglio oppure prendendo i valori su due fogli differenti. L’utilizzo di Excel lo vedo molto azzeccato per documenti come le fatture, lo vedo molto più complesso per il magazzino al quale preferisco di gran lunga Access. Come esempio per capire il funzionamento lato programmazione con VBA in Excel, vediamo come è possibile prendere due valori in due celle fisse dello stesso foglio, fare la moltiplicazione e scrivere il risultato in un’altra cella.

Esercizio con Excel

Come prima dritta vi consiglio di visualizzare la barra dei moduli e quella di Visual Basic, in modo da poter inserire un pulsante e ad esso associare un’azione. Nell’esempio i valori stanno rispettivamente nelle celle “E7” ed “E8”, il risultato lo mostreremo nella cella “E10”.

Sub Moltiplica_Clic()

    Dim a, b As Double

    a = Worksheets("Foglio1").Cells(7, 5)
    b = Worksheets("Foglio1").Cells(8, 5)

    a = a * b

    Worksheets("Foglio1").Cells(10, 5) = a

End Sub

Ovviamente in un Excel Italiano avremo il “Foglio1”, “Foglio2”, etc… per default, in uno in lingua Inglese avremo “Sheet1”, “Sheet2”, etc…
Molti di voi mi diranno allora che questa operazione è possibile compierla in modo migliore, anche senza bisogno di pigiare un pulsante, in Excel. Certamente, rispondo, ma questo era soltanto il primo esempio per farvi vedere come si programma con il linguaggio VBA di Excel.

Share
Giampaolo Rossi

Sviluppatore di software gestionale da oltre 28 anni.

Recent Posts

MerciGest: il gestionale di magazzino semplice e gratuito

MerciGest è il software gestionale gratuito per Windows che semplifica la gestione del magazzino: giacenze,…

2 settimane ago

Software gestionali con SQL Server: un archivio unico, accessibile ovunque

Tutti i nostri software gestionali possono essere collegati a un database SQL Server, consentendo l’accesso…

2 settimane ago

Come iniziare ad usare MerciGest in 5 minuti

MerciGest è semplice e immediato: basta scaricare e installare il programma per iniziare subito. Al…

2 settimane ago

Cos’è MerciGest e a chi serve

MerciGest è un gestionale di magazzino per Windows pensato per negozi, piccole imprese e artigiani…

2 settimane ago

Introduzione alla Standard Template Library (STL)

La Standard Template Library (STL) è una delle componenti più potenti del C++. Fornisce una…

8 mesi ago

Un Abbonamento per Tutti i Software

Sono arrivato alla convinzione che un abbonamento per tutti i miei software gestionali sia il…

2 anni ago