Come automatizzare le attività di routine in Excel con le macro

Excel ha una capacità potente, ma allo stesso tempo usata molto raramente, di creare sequenze automatiche di azioni usando le macro. Una macro è una via d'uscita ideale se hai a che fare con lo stesso tipo di attività che viene ripetuta molte volte. Ad esempio, elaborazione dati o formattazione di documenti secondo un modello standardizzato. In questo caso non è necessaria la conoscenza dei linguaggi di programmazione.

Sei già curioso di sapere cos'è una macro e come funziona? Quindi vai avanti con coraggio, quindi eseguiremo passo dopo passo l'intero processo di creazione di una macro con te.

Cos'è Macro?

Una macro in Microsoft Office (sì, questa funzionalità funziona allo stesso modo in molte applicazioni del pacchetto Microsoft Office) è un codice di programma in un linguaggio di programmazione Visual Basic, Applications Edition (VBA) memorizzato all'interno del documento. Per renderlo più chiaro, un documento di Microsoft Office può essere paragonato a una pagina HTML, quindi una macro è un analogo di Javascript. Quello che Javascript può fare con i dati HTML in una pagina web è molto simile a quello che può fare una macro con i dati in un documento di Microsoft Office.

Le macro possono fare qualsiasi cosa tu voglia in un documento. Eccone alcuni (una piccolissima parte):

  • Applicare stili e formattazione.
  • Eseguire varie operazioni con dati numerici e di testo.
  • Utilizzare fonti di dati esterne (file di database, documenti di testo, ecc.)
  • Crea un nuovo documento.
  • Fai tutto quanto sopra in qualsiasi combinazione.

Creazione di una macro: un esempio pratico

Ad esempio, prendiamo il file più comune CSV. Questa è una semplice tabella 10×20 riempita con numeri da 0 a 100 con intestazioni per colonne e righe. Il nostro compito è trasformare questo set di dati in una tabella formattata in modo presentabile e generare totali in ogni riga.

Come già accennato, una macro è un codice scritto nel linguaggio di programmazione VBA. Ma in Excel puoi creare un programma senza scrivere una riga di codice, cosa che faremo in questo momento.

Per creare una macro, apri Visualizza (Tipo) > Macro (Macro) > Registra macro (Registrazione macro...)

Assegna un nome alla tua macro (senza spazi) e fai clic OK.

A partire da questo momento, vengono registrate TUTTE le tue azioni con il documento: modifiche alle celle, scorrimento della tabella, persino ridimensionamento della finestra.

Excel segnala che la modalità di registrazione macro è abilitata in due posizioni. Innanzitutto, nel menu Macro (Macro) – invece di una stringa Registra macro (Registrazione di una macro...) è apparsa la riga Smettere di registrazione (Interrompi registrazione).

In secondo luogo, nell'angolo in basso a sinistra della finestra di Excel. Icona Fermare (quadrato piccolo) indica che la modalità di registrazione macro è abilitata. Facendo clic su di esso si interromperà la registrazione. Al contrario, quando la modalità di registrazione non è abilitata, è presente un'icona per abilitare la registrazione macro in questa posizione. Facendo clic su di esso si otterrà lo stesso risultato dell'attivazione della registrazione tramite il menu.

Ora che la modalità di registrazione macro è abilitata, passiamo al nostro compito. Prima di tutto, aggiungiamo le intestazioni per i dati di riepilogo.

Successivamente, inserisci le formule nelle celle in base ai nomi delle intestazioni (vengono fornite varianti delle formule per l'inglese e versioni di Excel, gli indirizzi delle celle sono sempre lettere e numeri latini):

  • =SOMMA(B2:K2) or =SOMMA(B2:K2)
  • =MEDIA(B2:K2) or =СРЗНАЧ(B2:K2)
  • =MIN(B2:K2) or =MIN(B2:K2)
  • =MASSIMO(B2:K2) or =MASSIMO(B2:K2)
  • =MEDIANA(B2:K2) or =MEDIANA(B2:K2)

Ora seleziona le celle con le formule e copiale su tutte le righe della nostra tabella trascinando la maniglia di riempimento automatico.

Dopo aver completato questo passaggio, ogni riga dovrebbe avere i totali corrispondenti.

Successivamente, riassumeremo i risultati per l'intera tabella, per questo facciamo alcune altre operazioni matematiche:

Rispettivamente:

  • =SOMMA(L2:L21) or =SOMMA(L2:L21)
  • =MEDIA(B2:K21) or =СРЗНАЧ(B2:K21) – per calcolare questo valore è necessario prendere esattamente i dati iniziali della tabella. Se prendi la media delle medie per le singole righe, il risultato sarà diverso.
  • =MIN(N2:N21) or =MIN(N2:N21)
  • =MASSIMO(O2:O21) or =MASSIMO(O2:O21)
  • =MEDIANA(B2:K21) or =MEDIANA(B2:K21) – si considera di utilizzare i dati iniziali della tabella, per il motivo sopra indicato.

Ora che abbiamo finito con i calcoli, facciamo un po' di formattazione. Innanzitutto, impostiamo lo stesso formato di visualizzazione dei dati per tutte le celle. Seleziona tutte le celle sul foglio, per fare ciò, usa la scorciatoia da tastiera Ctrl + Aoppure clicca sull'icona Seleziona tutto, che si trova all'intersezione delle intestazioni di riga e di colonna. Quindi fare clic Stile virgola Scheda (Formato delimitato). Casa (Casa).

Quindi, modifica l'aspetto delle intestazioni di colonna e riga:

  • Stile di carattere in grassetto.
  • Allineamento al centro.
  • Riempimento colore.

E infine, impostiamo il formato dei totali.

Ecco come dovrebbe apparire alla fine:

Se tutto ti va bene, interrompi la registrazione della macro.

Congratulazioni! Hai appena registrato la tua prima macro in Excel tu stesso.

Per utilizzare la macro generata, dobbiamo salvare il documento Excel in un formato che supporti le macro. Innanzitutto, dobbiamo eliminare tutti i dati dalla tabella che abbiamo creato, ovvero renderla un modello vuoto. Il fatto è che in futuro, lavorando con questo modello, importeremo al suo interno i dati più recenti e rilevanti.

Per cancellare tutte le celle dai dati, fare clic con il pulsante destro del mouse sull'icona Seleziona tutto, che si trova all'intersezione delle intestazioni di riga e colonna e dal menu di scelta rapida selezionare Elimina (Elimina).

Ora il nostro foglio è completamente ripulito da tutti i dati, mentre la macro rimane registrata. Abbiamo bisogno di salvare la cartella di lavoro come un modello di Excel abilitato per le macro con l'estensione XL™.

Un punto importante! Se salvi il file con estensione XLTX, la macro non funzionerà al suo interno. A proposito, puoi salvare la cartella di lavoro come modello Excel 97-2003, che ha il formato XLT, supporta anche le macro.

Quando il modello viene salvato, puoi chiudere Excel in sicurezza.

Esecuzione di una macro in Excel

Prima di svelarti tutte le possibilità della macro che hai creato, credo sia giusto prestare attenzione ad un paio di punti importanti riguardanti le macro in generale:

  • Le macro possono essere dannose.
  • Leggi di nuovo il paragrafo precedente.

Il codice VBA è molto potente. In particolare, può eseguire operazioni su file esterni al documento corrente. Ad esempio, una macro può eliminare o modificare qualsiasi file in una cartella I miei documenti. Per questo motivo, esegui e consenti macro solo da fonti attendibili.

Per eseguire la nostra macro di formattazione dei dati, apri il file modello che abbiamo creato nella prima parte di questo tutorial. Se disponi di impostazioni di sicurezza standard, quando apri un file, sopra la tabella viene visualizzato un avviso che indica che le macro sono disabilitate e un pulsante per abilitarle. Dal momento che abbiamo creato il modello noi stessi e ci fidiamo di noi stessi, premiamo il pulsante Abilitare il contenuto (Includi contenuto).

Il passaggio successivo consiste nell'importare l'ultimo set di dati aggiornato dal file CSV (sulla base di tale file, abbiamo creato la nostra macro).

Quando importi dati da un file CSV, Excel potrebbe chiederti di configurare alcune impostazioni per trasferire correttamente i dati nella tabella.

Al termine dell'importazione, vai al menu Macro scheda (Macro). Visualizza (Visualizza) e selezionare un comando Visualizza macro (Macro).

Nella finestra di dialogo che si apre, vedremo una riga con il nome della nostra macro FormatoDati. Selezionalo e fai clic Correre (Eseguire).

Quando la macro inizia a essere eseguita, vedrai il cursore della tabella saltare da una cella all'altra. Dopo alcuni secondi, con i dati verranno eseguite le stesse operazioni di quando si registra una macro. Quando tutto è pronto, la tabella dovrebbe avere lo stesso aspetto dell'originale che abbiamo formattato a mano, solo con dati diversi nelle celle.

Guardiamo sotto il cofano: come funziona una macro?

Come accennato più di una volta, una macro è un codice di programma in un linguaggio di programmazione. Visual Basic, Applications Edition (VBA). Quando si attiva la modalità di registrazione macro, Excel registra effettivamente ogni azione eseguita sotto forma di istruzioni VBA. In poche parole, Excel scrive il codice per te.

Per vedere questo codice di programma, è necessario nel menu Macro scheda (Macro). Visualizza (visualizza) fare clic Visualizza macro (Macro) e nella finestra di dialogo che si apre, fare clic su Modifica (Modificare).

La finestra si apre. Visual Basic, Applications Edition, in cui vedremo il codice di programma della macro che abbiamo registrato. Sì, hai capito bene, qui puoi modificare questo codice e persino creare una nuova macro. Le azioni che abbiamo eseguito con la tabella in questa lezione possono essere registrate utilizzando la registrazione macro automatica in Excel. Ma le macro più complesse, con sequenza finemente sintonizzata e logica di azione, richiedono una programmazione manuale.

Aggiungiamo un altro passaggio al nostro compito...

Immagina che il nostro file di dati originale dati.csv viene creato automaticamente da alcuni processi ed è sempre archiviato su disco nello stesso posto. Per esempio, C:Datadata.csv – percorso del file con i dati aggiornati. Il processo di apertura di questo file e di importazione dei dati da esso può anche essere registrato in una macro:

  1. Apri il file modello in cui abbiamo salvato la macro − FormatoDati.
  2. Crea una nuova macro denominata Caricamento dati.
  3. Durante la registrazione di una macro Caricamento dati importare dati da file dati.csv – come abbiamo fatto nella parte precedente della lezione.
  4. Al termine dell'importazione, interrompere la registrazione della macro.
  5. Elimina tutti i dati dalle celle.
  6. Salva il file come modello Excel abilitato alle macro (estensione XLTM).

Pertanto, eseguendo questo modello, hai accesso a due macro: una carica i dati, l'altra li formatta.

Se vuoi entrare nella programmazione, puoi combinare le azioni di queste due macro in una, semplicemente copiando il codice da Caricamento dati all'inizio del codice FormatoDati.

Lascia un Commento