Gli eventi in Excel sono delle azioni specifiche che vengono attivate ed eseguite automaticamente quando si verificano determinate situazioni. Questi eventi sono progettati per facilitare e automatizzare alcune operazioni all‘interno di un foglio di lavoro.
I tre eventi più comuni in Excel sono Change(), Open() e Activate(). Vediamo di seguito una descrizione più dettagliata di ognuno di essi:
1. Evento Change() – Si tratta di un evento automatico che si attiva ogni volta che il contenuto di una cella viene modificato. Questo evento è molto utile per eseguire delle azioni specifiche in base alle modifiche apportate alle celle, come ad esempio aggiornare i calcoli o eseguire dei controlli sui dati inseriti.
2. Evento Activate() – Questo evento si attiva quando una finestra o un foglio di lavoro viene attivato, cioè quando diventa la finestra o il foglio di lavoro attivo all’interno del programma Excel. Questo evento è molto utile per eseguire delle azioni specifiche quando si passa da un foglio di lavoro all’altro o quando si torna a una finestra dopo averla minimizzata.
3. Evento Open() – Si tratta di un evento che si attiva quando un file di Excel viene aperto. Questo evento può essere utilizzato per eseguire delle operazioni specifiche ogni volta che si apre un determinato file, ad esempio per avviare dei calcoli o per effettuare dei controlli sui dati presenti nel file prima di iniziare a lavorare.
In Excel, gli eventi sono azioni che si verificano all’interno del foglio di lavoro e che possono essere sfruttati per automatizzare e semplificare le operazioni. Ci sono diversi tipi di eventi disponibili in Excel, tra cui Change(), Activate() e Open(). Vediamo come sfruttarli nel dettaglio:
1. Change(): questo evento si verifica quando viene modificata una cella o un intervallo di celle nel foglio di lavoro. Per utilizzare questo evento, è necessario creare un modulo di classe e assegnare la macro al modulo, in modo che venga eseguita ogni volta che viene modificato il contenuto di una cella nel foglio di lavoro.
Ad esempio, si può utilizzare questo evento per aggiornare automaticamente alcune formule o grafici quando viene modificato un dato di input nel foglio di lavoro.
2. Activate(): questo evento si verifica quando si seleziona un foglio di lavoro o quando si torna a un foglio di lavoro precedentemente attivato. Si può utilizzare questo evento per eseguire azioni specifiche quando si passa da un foglio all’altro, come ad esempio aggiornare una tabella pivot o una macro di riassunto.
3. Open(): questo evento si verifica quando si apre un libro di lavoro. Si può utilizzare questo evento per impostare alcune operazioni di avvio automatico, come ad esempio l’apertura di una finestra di dialogo di benvenuto o l’esecuzione di una serie di azioni di inizializzazione del file.
Per utilizzare questi eventi, è necessario creare un modulo di classe.
Per creare un modulo di classe e assegnare una macro a un evento in Excel, seguire questi passi:
1. Fare clic sulla scheda “Sviluppo” nella barra multifunzione e selezionare “Visual Basic”.
2. Nella finestra di Visual Basic, fare clic con il pulsante destro del mouse sul nome del foglio di lavoro su cui si intende attivare l’evento.
4. Nella finestra di codice del modulo di classe, selezionare “Worksheet” nell’elenco a discesa “Nome dell’oggetto” e quindi selezionare l’evento desiderato (Change(), Activate() o Open()) dall’elenco a discesa “Procedure”.
5. Inserire il codice necessario per l’evento selezionato.
Ad esempio, per utilizzare l’evento Change() e aggiornare automaticamente una cella di output quando viene modificata una cella di input, si può utilizzare il seguente codice:
Private Sub Worksheet_Change(ByVal Target As Range)
‘Aggiornamento automatico cella di output quando If Not Intersect(Target, Range(“A1”)) Is Nothing Then Range(“B1”).Value = “Nuovo valore” End If End Sub |
6. Salvare il file di Excel con estensione “.xlsm” (formato di libro di lavoro con macro abilitate).
Da questo momento, ogni volta che si verifica l’evento selezionato, verrà eseguita la macro associata. È possibile utilizzare questo approccio per automatizzare una vasta gamma di operazioni in Excel, rendendo il lavoro più efficiente e riducendo il rischio di errori.