Quando si gestiscono fogli di lavoro excel spesso ci si ritrova ad eseguire operazioni ripetitive che richiedono una determinata quantità di tempo per poter essere svolte. Nel caso di analisi ripetitive complesse, tale tempo di lavoro può essere sufficientemente lungo da richiedere l’utilizzo di uno stratagemma: automatizzare tali operazioni creando una Macro Excel.

Una Macro Excel è un programma scritto in Visual Basic For Application (VBA) che viene elaborato da Excel e che sfrutta una semplice interfaccia grafica spesso riconducibile a pochi bottoni. Essa consente di automatizzare innumerevoli azioni quali clic, formule, calcoli, formattazioni condizionali, operazioni di copia & incolla, di eliminazione etc..

Questa definizione di Macro Excel potrebbe spaventare chi si accinge a lavorare con le macro in quanto presuppone competenze di programmazione in Visuale Basic. In realtà ciò è solo parzialmente vero in quanto vedremo che sarà possibile ottenere delle semplici macro excel in pochi passi. Il consiglio è quello di creare delle macro molto semplici e provare a leggerne il codice per identificare la corrispondenza tra un’operazione e un comando e di utilizzare le informazioni in rete per identificare le soluzioni ad eventuali errori. Prima di vedere come è possibile creare una macro vediamo insieme la logica giusta da utilizzare nella fase di creazione o esecuzione di una macro.

Logica dietro una macro: ripristino condizioni iniziali

Immaginiamo di dare ordine ad un uomo in una stanza di aprire una porta ed uscire ogni qualvolta viene premuto un tasto. Premendo il tasto la prima volta, l’uomo aprirà la porta ed uscirà come previsto. Premendolo una seconda volta l’uomo vi farà notare che essendo già fuori deve prima rientrare per poter eseguire l’ordine. Occorre quindi ripristinare la condizione iniziale facendo rientrare l’uomo prima di poter richiedere nuovamente l’esecuzione dell’ordine.

La stessa cosa accade con le Macro Excel! Affinché queste funzionino correttamente è bene aver intuito quali siano le condizioni iniziali dalla quale la macro incomincia ad eseguire le operazioni richieste. E’ bene sottolineare che riuscire ad inserire nella macro stessa il ripristino delle condizioni iniziali evita errori e di doverlo fare ogni volta manualmente.

Come creare una macro Excel

Per creare una macro excel esistono due modi:

  • Creare direttamente il codice in Visual Basic
  • Registrare una Macro

In questo articolo ci concentreremo solo sulla seconda opzione in quanto più semplice ed intuitiva. La prima opzione è indicata solo per utenti già molto esperti. Nel proseguo dell’articolo vedremo come registrare una semplicissima macro step by step.

Step1: Verificare la possibilità di creare una macro con la propria versione excel

Questa operazione è davvero molto semplice. Occorre controllare che sia presente la scheda sviluppo nella barra multifunzione di Microsoft Excel.

scheda sviluppo macro Excel

Se così non fosse basta eseguire il seguente percorso: File -> Opzioni -> Personalizzazzione barra multifunzione– Qui nella sezione Personalizzazione della barra multifunzione e schede principali, basta selezionare l’opzione Sviluppo.

Step 2: Registrazione di una Macro Excel

A questo punto è possibile iniziare la registrazione della prima macro. Essa consisterà in un programmino capace di copiare una tabella dal foglio1 al foglio2. Il codice della macro ottenuto dalla registrazione sarà copiato all’interno di un bottone. Premendo questo bottone sarà possibile ricopiare in automatico la tabella dal foglio1 al foglio2 con un semplice clic.

Si costruisce una tabella esempio dalla cella A1 alla cella F8 e si inizia la registrazione della macro cliccando sulla seguente icona della scheda sviluppo:

Registra Macro Excel

Dopo aver scelto il nome da assegnare la macro ed aver premuto ok,  qualsiasi comando, compresi clic e operazioni di scroll, vengono registrati da excel e tradotti in codice VBA. Registriamo allora la seguente successione di operazioni:

  1. Selezioniamo la tabella da A1 a F8 nel foglio1
  2. Copiamo la tabella (combinazione rapida ctrl + C)
  3. Apriamo il foglio2
  4. Ci posizioniamo sulla cella A1 del foglio2
  5. Incolliamo la tabella (combinazione rapida ctrl + V)
  6. Ci posizioniamo sulla cella A1 del foglio1 (ripristino condizione iniziale)
  7. Terminare la registrazione cliccando l’icona:

Interrompi registrazione Macro Excel

 

Step 3: comprensione del codice della macro

Una volta terminata la registrazione, è possibile risalire al codice VBA della macro registrata cliccando su Macro -> Visualizza Macro -> Visualizza codice.  Il codice sarà:

Range(“A1:F8”).Select
Selection.Copy
Sheets(“Foglio2”).Select
ActiveSheet.Paste
Sheets(“Foglio1”).Select
Range(“A1”).Select

Confrontiamo il codice ottenuto con le operazioni eseguite:

  1. Selezioniamo la tabella da A1 a F8 nel foglio1 –> Range(“A1:F8”).Select
  2. Copiamo la tabella (combinazione rapida ctrl + C) –> Selection.Copy
  3. Apriamo il foglio2 –>Sheets(“Foglio2”).Select
  4. Ci posizioniamo sulla cella A1 del foglio2
  5. Incolliamo la tabella (combinazione rapida ctrl + V) –> ActiveSheet.Paste
  6. Ci posizioniamo sulla cella A1 del foglio1 (ripristino condizione iniziale)  –> Sheets(“Foglio1”).Select
    Range(“A1”).Select

Prova a fare delle leggere modifiche al codice e poi esegui la macro (Macro -> Visualizza Macro -> Esegui) per osservare come varia il programma in base a tali modifiche.

Step 4: Creazione di un bottone

Dalla scheda Sviluppo cliccare sull’icona inserisci e successivamente su Pilsante di comando (controllo ActiveX). A questo punto disegnare il bottone sul foglio1, cliccare con il tasto destro e scegliere l’opzione visualizza codice:

Creazione Bottone Macro Excel

Essendo stato appena creato, il tasto non ha codice a meno delle righe:

Private Sub CommandButton1_Click()

End Sub

Per questo motivo, cliccando sul tasto non accade nulla. A questo punto copiamo il codice della macro appena registrata, privo della prima e ultima riga, nel codice del bottone e chiudiamo l’ambiente VBA.

Visualizza codice bottone VBA. Macro Excel

Codice bottone VBA

 

Adesso modifichiamo in maniera casuale le celle della tabella e clicchiamo il bottone: la tabella modificata è stata copiata nel foglio2!!!! Adesso, prova ad eseguire macro via via più complicate. Se hai bisogno di aiuto contattaci su admin@meetheskilled.com.

Come creare una Macro Excel in pochi semplici passi
Tag:                     
%d blogger hanno fatto clic su Mi Piace per questo: