VBA Excel: come padroneggiare le macro 

 Dicembre 4, 2019

By  Damiano Causale

  • Home
  • Blog
  • VBA Excel: come padroneggiare le macro

In questo articolo ti do alcuni utili suggerimenti per padroneggiare le macro e il VBA di Excel. Scopri come padroneggiare le macro attraverso alcuni utili suggerimenti.

Trovo il linguaggio VBA (Visual Basic for Applications) uno strumento utile per sfruttare pienamente il potenziale di Excel. Esso rappresenta il livello più elevato di conoscenza di Excel.

Grazie allo studio e all'esperienza fatta negli anni con le macro ed il VBA ho acquisito una sufficiente padronanza con il linguaggio VBA che mi ha permesso di poter gestire gran parte delle mie attività di lavoro quotidiane con successo.

Ritengo pertanto che valga la pena investire parte del tuo tempo nello studio di questo linguaggio per imparare a programmare in VBA.

Dopo questa breve introduzione vediamo quali sono i suggerimenti utili per programmare con Excel.

1 | Usa il registratore di macro Excel

Il registratore di macro presente in Excel è un ottimo modo per conoscere e gestire gli oggetti presenti in VBA.

Col tempo ti renderai conto che potrai farne a meno ma talvolta lo uso per richiamare alla memoria parti di codice di cui non ricordo correttamente la sintassi.

Considera però che il registratore di macro non ti offre sempre il codice migliore. Tuttavia, ti suggerisce come scrivere il codice per eseguire una serie di azioni.

imparare VBA | excel macro | registratore di macro | VBA Excel

2 | Suddividi il tuo lavoro in piccoli passaggi

programmare excel | Suddividi il lavoro in piccoli passaggi |  Excel VBA

A prescindere dalla complessità del compito che stai affrontando, sicuramente è possibile suddividerlo in compiti minori.

Questo approccio ti consente di osservare il tuo lavoro da una prospettiva differente. Si tratta di lavorare per “stati di avanzamento”.

Questo è quello che ho sempre fatto ogni volta in cui mi son trovato difronte ad un compito complesso.

Ho suddiviso il problema in piccoli pezzi concentrandomi volta per volta su ogni singolo frammento.

Dopo averne completato uno son passato al successivo e così via, ed alla fine ho assemblato il tutto.

Questa modalità ha diversi vantaggi:

 

visual basic excel | VBA per excel

3 | Pensa prima di programmare con il VBA

programmare in excel | visual basic for application

Il modo migliore per risolvere un problema molto complesso è pensare prima di agire.

Prima di procedere all’automatizzazione di un’attività non farti rendere dalla fretta di ottenere il risultato finale ma prendi carta e penna e crea uno schema su un foglio. Questo ti aiuterà a chiarirti le idee sui vari passaggi.

Osserva, analizza e cerca di comprendere i vari aspetti del problema. In questo modo la soluzione diventa più chiara. E posso garantirti che per me ha funzionato e son sicuro che funzionerà anche per te.

 

4 | Tieni un buon libro a portata di mano

programmazione vba | Excel VBA

Sin dai miei primi passi nel terreno delle macro e del VBA ho sempre tenuto a portata di mano un buon libro.

I libri rimangono sempre un’ottima guida durante un percorso di studio poiché contengono molte informazioni e suggerimenti utili.

I libri rappresentano un ottimo investimento. Nella mia scrivania son sempre presenti due libri a cui faccio spesso riferimento mentre sto lavorando:

  • Excel 2016 Power Programming with VBA di Michael Alexander, Dick Kusleika, John Walkenbach
  • Excel Vba Programming for Dummies di John Walkenbach

L’autore di questi libri, John Walkenbach, è senza dubbio la principale autorità nel campo di Excel e dei fogli di calcolo.

Ogni volta che ho qualche dubbio o bisogno di suggerimenti e soluzioni li consulto; ogni volta imparo sempre qualcosa di nuovo.

5 | Ragiona in modo iterativo

programmazione excel | ragionare in modo iterativo | codici vba

Cosa significa ragionare in modo iterativo? In sintesi significa procedere verso il risultato finale attraverso la ripetizione di una serie di operazioni.

Ogni volta che cerchi di automatizzare un’attività fermati un attimo e cerca di capire qual è la funzione più piccola, e più utile, che ti consente di snellire le tue procedure. Saranno sufficienti poche righe di codice per risolvere un problema.

Lo scopo della programmazione è proprio quella di ridurre le operazioni noiose e ripetitive. In questo modo, i tuoi tempi lavoro si riducono e sei in grado di aggiungere nuove funzionalità ai tuoi codici VBA.

L’approccio iterativo ti consente di fermarti quando vuoi mantenendo sempre qualche pezzo di codice funzionante.

6 | Esegui le macro Excel una riga alla volta

Per capire a fondo il significato del codice contenuto nelle macro prova ad eseguire passo dopo passo ogni singola riga di codice.

Questo è sicuramente un ottimo metodo per memorizzare ogni singola istruzione.

Utilizza il menu Debug, presente nell’Editor VB, o più semplicemente premi il tasto funzione F8 ogni volta che vuoi eseguire una singola riga di codice alla volta.

vb editor | menu debug | Esegui le macro Excel una riga alla volta | Excel VBA

7 | Utilizza la finestra immediata

L’Editor VB dispone di una potente funzionalità chiamata finestra Immediata. È possibile scrivere quasi tutte le istruzioni VBA al suo interno ed ottenere risultati rapidi.

Vediamo come.

Apri l’Editor VB (ALT + F11 in Excel) e vai alla finestra Immediata.

Se non la visualizzi vai sul menu Visualizza e scegli la voce Finestra Immediata (o in alternativa utilizza la combinazione di tasti CTRL + G).

excel macro vba | finestra immediata

A questo punto, seleziona una cella contenente valori. Digita il seguente codice all’interno della finestra Immediata.

codice vba | linguaggio vba excel

Ora premi il tasto Invio e vedrai il valore della cella corrente mostrato nella finestra Immediata.

programmazione excel | intellisense

8 | Crea un archivio con le tue soluzioni VBA

Un buon metodo per apprendere una nuova lingua è prendere appunti. Ogni volta che ho trovato la soluzione ad un piccolo automatismo in Excel ho creato un file con i vari passaggi. Questo è un ottimo stratagemma quando hai bisogno di una soluzione immediata a portata di mano.

Oggi la mia cartella personale contiene più di mille file con tante soluzioni a problemi risolti in passato. Quando ho bisogno di una porzione di codice vado e lo pesco dal mio archivio.

9 | Prova, sperimenta, accetta le sfide e divertiti con il VBA

accetta le sfide e divertiti con il VBA

All’inizio non è stato semplice. Iniziare lo studio di una nuova lingua può creare momenti di scoraggiamento, così è stato anche per me, ma dopo averne intravisto il potenziale ho capito che ne valeva la pena provarci. Tutto dipende da come decidi di affrontare il percorso.

Prova a metterti qualche piccolo obbiettivo, rendi il tuo lavoro stimolante.

Prova ad automatizzare una piccola operazione utilizzando il VBA.

Prova a semplificare una formula o a migliorare una procedura.

Ritengo che se vuoi padroneggiare le macro, il VBA ed Excel devi considerare il tuo lavoro stimolante e accettare le nuove sfide.

Ogni volta che risolvo un problema complicato utilizzando le macro ed il VBA mi sento sempre molto soddisfatto, entusiasta e ripagato del tempo investito. La soddisfazione di essere riuscito a ridurre i tempi di esecuzione di un’attività è enorme e vale ogni secondo che investo sulla programmazione di Excel.

Vuoi imparare a utilizzare il linguaggio Excel VBA?

Basta con i lavori noiosi e ripetitivi! Grazie al VBA puoi far lavorare Excel al tuo posto!

Ho registrato per te un corso interamente dedicato alle Macro e al VBA.

Attraverso degli esempi pratici, ti introdurrò, al mondo delle Macro di Excel illustrandoti tutto il potenziale per automatizzare le tue attività di lavoro quotidiane.

Cosa aspetti?

Sfrutta tutto il potenziale di Excel con il corso Macro e VBA!

Damiano Causale


Mi chiamo Damiano Causale, istruttore Microsoft certificato, per lavoro aiuto aziende e privati nell'utilizzo di Excel.

Damiano Causale

Your email address will not be published. Required fields are marked

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}