Oggi provo a chiarire una volta per tutte a cosa serve il Vba in Excel. In sintesi Excel è stato realizzato per poter eseguire in modo autonomo le istruzioni che gli vengono date nel linguaggio vba. Quindi Excel può svolgere tutte le attività automaticamente, se gli diciamo cosa fare e come farlo nel linguaggio che comprende.
Il Vba ed Excel
Vba è l’acronimo di Visual Basic for Application e in sintesi è il vecchio Visual Basic che è stato integrato dalla Microsoft in Excel, come linguaggio con cui scrivere routine.
Excel può svolgere le attività autonomamente se gli diciamo cosa fare e come farlo. Ripeto: Excel può svolgere tutte le attività che possiamo realizzare dentro il foglio di calcolo in modo autonomo.
Come? Dandogli la lista delle cose da fare. Le routine sono questo, sono liste di istruzioni che Excel può svolgere automaticamente al posto nostro. Liste che dobbiamo scrivere nella lingua che Excel comprende, cioè il Vba.
Il vba è un linguaggio classico, basato sulla lingua inglese, centrato sugli oggetti, semplice da imparare e utilizzare, con un vocabolario molto grande e una sintassi relativamente semplice, con cui possiamo svolgere attività o modificare gli oggetti del foglio di calcolo (e non solo).
Per approfondire il tema Vba ti invito a leggere la guida al vba, la guida alle macro e i post dedicati all’automazione.
A cosa serve il Vba in Excel?
Lo scopo del Vba in Excel lo abbiamo visto: dare ordini al foglio di calcolo, ma perché dovresti farlo?
Volendo semplificare:
- per far lavorare Excel al tuo posto, facendogli fare le attività ripetitive, con lo scopo di risparmiare tempo;
- fare cose che non puoi fare attraverso i comandi di Excel o è complicato fare, con la conseguenza di poter ottenere risultati che di solito non puoi ottenere su Excel;
- per realizzare attività e strumenti che vanno oltre gli strumenti di Excel, e quindi costruire i tuoi strumenti che puoi controllare e personalizzare come più desideri, invece di ricorrere a strumenti diversi dal foglio di calcolo;
- rendere Excel più semplice da usare, permettendo anche a persone non competenti di poterlo utilizzare.
Quindi con il Vba possiamo comandare Excel con l’obiettivo di:
- risparmiare tempo,
- rendere i tuoi fogli più veloci, efficienti e performanti,
- realizzare strumenti personalizzati come vuoi tu,
- rendere i tuoi fogli più professionali e semplici.
In sostanza il Vba permette di far lavorare Excel in modo diverso, agendo a un livello diverso rispetto alle pagine e all’interfaccia del foglio di calcolo.
Cosa puoi fare con il vba?
Cerchiamo di chiarire quali sono le possibilità che offre la conoscenza del vba. Con macro e vba possiamo:
- automatizzare gruppi di attività ripetitive,
- costruire nuove funzioni e strumenti di elaborazione,
- creare nuovi strumenti di gestione per Excel,
- lanciare automatismi in modo autonomo,
- automatizzare tutte le attività svolte nel foglio, eccetto quelle decisionali e creative,
- gestire e interagire con il foglio anche o solo con userform e controlli.
In particolare:
Automatizzare le attività ripetitive
L’uso più diffuso del vba in Excel, è realizzare routine da dare in pasto a Excel affinché svolga attività al posto nostro. Perché porta vantaggi concreti anche a bassi livelli di competenza.
Solo imparare a usare il registratore di macro al meglio, permette di automatizzare i fogli, limitatamente ma con risparmi concreti di tempo. Il tempo necessario per imparare a farlo è un paio d’ore di studio e 2–3 ore di pratica.
Se invece vogliamo ottenere un risparmio notevole di tempo dall’automazione delle attività ripetitive, dobbiamo studiare il vba e imparare a sviluppare automatismi efficaci ed efficienti. Con 30 ore di studio e altrettanti di pratica è possibile ottenere risultati notevoli.
Costruire nuove funzioni e strumenti di elaborazione
Le funzioni sono macro che svolgono elaborazioni specifiche su parametri ricevuti o variabili pubbliche con lo scopo di restituire un valore. Con il vba possiamo realizzare strumenti analoghi alle funzioni di Excel, con cui eseguiamo calcoli anche complessi.
Inoltre il vba permette di creare strumenti di elaborazione in grado di svolgere sequenze di calcoli, specifici, e allo stesso tempo di eseguire controlli sui parametri e gli input richiesti e di produrre output più complessi del semplice valore, per esempio tabelle, matrici di valori o grafici. Tutto questo richiede una buona conoscenza del vba e di Excel. In sostanza sono necessarie un’altra decina di ore di studio e pratica in più.
Creare nuovi strumenti di gestione per Excel
Sono strumenti creati da noi, realizzati su pagina o su userform, con cui possiamo eseguire attività che gli strumenti di excel non svolgono, o possiamo farlo meglio. Sono per esempio pannelli di controllo o gestione, maschere di vario tipo, eccetera. Permettono di svolgere attività specifiche in modo più efficiente, facilitato o assistito.
Questi strumenti possono esistere solo grazie alle routine in vba che li fanno funzionare e li rendono utili e pratici. Le competenze richieste possono essere molto diverse a seconda della complessità delle attività svolte e degli strumenti impiegati. All’incirca sono richieste 30–60 ore in più di studio e pratica.
Lanciare automatismi in modo autonomo con gli eventi
È possibile far svolgere a Excel attività automatiche specifiche senza bisogno di agire su controlli. Realizzare una struttura di automatismi a esecuzione autonoma non è semplice come può sembrare a prima vista. È necessario conoscere bene Excel e Vba e saper progettare l’automazione dei fogli anche sotto l’aspetto dell’esperienza dell’utente. Servono almeno un’altra decina di ore di studio e pratica di strumenti e metodi di impiego.
Automazione spinta del foglio
Se il foglio Excel è uno strumento di lunga durata e si possiedono buone competenze di vba e una discreta esperienza, allora siamo in grado di automatizzare tutte le attività che l’operatore svolge sul foglio.
Saperlo fare non significa che è vantaggioso e opportuno farlo. Anzi nella maggior parte dei casi non lo è affatto. Talvolta però vale la pena e in realtà di solito si automatizzano fino all’80% delle attività importanti. Le competenze richieste devono essere ampie e accompagnate da una solida esperienza.
Gestire i fogli con userform e controlli
Chi conosce il vba e gli strumenti dell’automazione a livello avanzato è in grado di automatizzare in modo esteso i fogli di lavoro e inevitabilmente sarà spinto a usare le userform per gestire in modo più efficiente e comodo l’automazione e gli strumenti personalizzati. Su userform e maschere ti invito a leggere questa breve introduzione.
Di solito non è opportuno nè consigliabile automatizzare in questo modo i fogli soprattutto per il costo di tempo considerevole. Ma se la tua esperienza è notevole e la tua cassetta degli attrezzi è ricca di macro flessibili e maschere pronte all’uso, allora ha senso usarli per automatizzare strumenti di lunga durata.
Per approfondire le possibilità del Vba in Excel, ti invito a leggere il post “Cosa si può fare con l’automazione di Excel”.
A chi serve il vba?
Perché dovresti studiare e imparare il vba?
Perché hai bisogno di quello che il Vba permette di ottenere: risparmiare tempo, realizzare strumenti su misura, rendere i fogli efficienti, professionali, eccetera.
Quindi se lavori su Excel per ore per la tua professione e svolgi una quantità rilevante di attività ripetitive, vale la pena considerare la possibilità di imparare l’automazione. Oppure se hai bisogno di migliorare i tuoi fogli Excel, per renderli più efficienti o efficaci, il vba può aiutarti. Oppure se hai bisogno di realizzare uno strumento su misura delle tue necessità perché gli altri strumenti non le soddisfano, vale la pena considerare l’automazione.
Esempi di utilizzo di Vba
E adesso alcuni esempi di automazione presi da alcuni lavori recenti. Per motivi di privacy non indico nomi né altri dati sensibili
Strumento per seguire avanzamento produzione
Per una piccola azienda ho automatizzato un foglio per pianificare e controllare l’avanzamento di produzione. Lo strumento era gestito quasi tutto manualmente e con una dozzina di macro ho dimezzato i tempi di gestione, con un risparmio di oltre cento ore l’anno.
Comparatore di report
Per un impiegato di una azienda commerciale ho realizzato un comparatore che confrontava i dati di 2 report sugli stessi dati, ma di origine diversa. L’attività era eseguita con metodi e strumenti tradizionali, con una macro “su misura” l’attività è stata semplificata con un risparmio di una ventina di ore l’anno.
Controllo vendite
Per un piccolo commerciante ho automatizzato una parte delle attività per la gestione di uno strumento di controllo della sua attività. Una decina di macro hanno reso molto più efficiente il foglio, con un risparmio annuo di circa 40 ore di tempo.
Dashboard
Per un consulente aziendale ho automatizzato una dashboard destinata ai clienti, con l’obiettivo di renderla più efficiente e professionale. Il risultato è stata la riduzione della metà del tempo di gestione, circa 20 ore annue. E i complimenti degli utenti.
Questi sono alcuni esempi dell’utilità dell’automazione di Excel nella pratica lavorativa. Nella maggior parte dei casi per un uso ordinario non è necessaria l’automazione. Ma se Excel è uno strumento importante per il tuo lavoro e lo usi per molte ore la settimana, se lavori su strumenti “permanenti” o di lunga durata, allora imparare a dare ordini a Excel può essere utile.
Conclusioni
Normalmente Excel soddisfa i bisogni basilari di automazione grazie agli strumenti sempre più evoluti e comodi delle ultime versioni.
Ma ci sono persone, strumenti e situazioni che invece richiedono l’automazione per i vantaggi specifici che comporta e che abbiamo visto. Se non si opta per strumenti diversi dal foglio di calcolo e si vuole risparmiare tempo, realizzare fogli migliori, eccetera, allora l’automazione può essere una buona soluzione.
Se vuoi approfondire l’argomento, ti invito a guardare i tutorial dedicati all’automazione di Excel e le lezioni in anteprima del corso di automazione.
PS: Se questo post ti è piaciuto o ti è stato utile, condividilo con gli amici sui social.
Puoi farlo attraverso i pulsanti qui di seguito. Grazie