Articoli
  • Register

In questo articolo vediamo come impostare l'esecuzione di una macro in maniera automatica all' apertura di un documento di Excel (per tutte le versioni).

  

Si supponga di aver registrato una macro, e di averla salvata con nome “operazioniPreliminari” nella cartella di lavoro corrente. Per poter rendere la macro “auto avviante”, e’ necessario aprire l’editor di Visual Basic, che permette di accedere al codice sorgente della macro; e’ sufficiente un click destro del mouse sull’etichetta di uno dei fogli del documento in esame, con selezione della voce “visualizza codice” :

 

 

La selezione aprirà l’editor di Visual Basic. Navigando nella struttura dei documenti e dei file che costituiscono il documento di lavoro, bisogna identificare l’oggetto “thisWorkbook”, nella sezione di sinistra.
A questo punto bisogna attivare la gestione del codice abbinato con un doppio click sull’oggetto “thisWorkbook”; verrà inserito nella colonna di destra il codice che deve essere eseguito all’avvio del documento; per avere la macro auto avviante, e’ sufficiente invocare il nome stesso della macro, attraverso la direttiva “call” :

 

Private Sub Workbook_Open()
     Call operazioniPreliminari()
End Sub

 

 

Se si vuole poter gestire anche la chiusura del file, e quindi lanciare una macro per operazioni finali sul documento, e’ necessario gestire la routine “Workbook_BeforeClose()”, come da esempio seguente

 

Private Sub Workbook_Open()

    ' macro in avvio

    Call operazioniPreliminari()

End Sub

 

Private Sub Workbook_BeforeClose(Cancel As Boolean)

    ' macro in chiusura

    Call operazioniFinali()

End Sub