9Sep

Scopri come utilizzare le macro di Excel per automatizzare le noiose attività

Una delle funzioni più potenti, ma raramente utilizzate, di Excel è la possibilità di creare facilmente attività automatizzate e logica personalizzata all'interno delle macro. Le macro rappresentano un modo ideale per risparmiare tempo su attività prevedibili e ripetitive e standardizzare i formati di documenti, molte volte senza dover scrivere una singola riga di codice.

Se sei curioso di sapere quali sono i macro o come effettivamente crearli, nessun problema: ti guideremo attraverso l'intero processo.

Nota: lo stesso processo dovrebbe funzionare nella maggior parte delle versioni di Microsoft Office. Gli screenshot potrebbero sembrare leggermente diversi.

Che cos'è una macro?

Una macro di Microsoft Office( come questa funzionalità si applica a molte delle applicazioni di MS Office) è semplicemente codice Visual Basic for Applications( VBA) salvato all'interno di un documento. Per un'analogia comparabile, pensa a un documento come HTML e una macro come Javascript. Più o meno allo stesso modo in cui Javascript può manipolare l'HTML su una pagina Web, una macro può manipolare un documento. Le macro

sono incredibilmente potenti e possono fare praticamente tutto ciò che la tua immaginazione può fare. Come( molto) breve elenco di funzioni che è possibile fare con una macro:

  • Applicare stile e formattazione.
  • Manipola dati e testo.
  • Comunicazione con origini dati( database, file di testo, ecc.).
  • Crea documenti completamente nuovi.
  • Qualsiasi combinazione, in qualsiasi ordine, di uno dei precedenti.

Creazione di una macro: una spiegazione per esempio

Iniziamo con il file CSV della varietà Garden. Niente di speciale qui, solo un insieme di numeri 10 × 20 tra 0 e 100 con intestazione sia di riga che di colonna. Il nostro obiettivo è produrre un foglio dati ben formattato e presentabile che includa i totali di riepilogo per ogni riga.

Come abbiamo detto sopra, una macro è il codice VBA, ma una delle cose carine su Excel è che puoi crearle / registrarle con zero codifiche richieste - come faremo qui.

Per creare una macro, vai a Visualizza & gt;Macro & gt;Registra macro.

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

Una volta fatto questo, vengono registrati tutti delle tue azioni - ogni cambiamento di cella, azione di scorrimento, ridimensionamento della finestra, tu lo chiami.

Ci sono un paio di posizioni che indicano che Excel è la modalità di registrazione. Uno è visualizzando il menu Macro e notando che Stop Recording ha sostituito l'opzione per Registra macro.

L'altro è nell'angolo in basso a destra. L'icona 'stop' indica che è in modalità macro e premendo qui si interrompe la registrazione( allo stesso modo, quando non è in modalità di registrazione, questa icona sarà il pulsante Registra macro, che è possibile utilizzare invece di andare al menu Macro).

Ora che stiamo registrando la nostra macro, applichiamo i nostri calcoli di riepilogo. Per prima cosa aggiungi le intestazioni.

Quindi, applicare le formule appropriate( rispettivamente):

  • = SOMMA( B2: K2)
  • = MEDIA( B2: K2)
  • = MIN( B2: K2)
  • = MAX( B2: K2)
  • = MEDIA( B2: K2)

Ora, evidenzia tutte le celle di calcolo e trascina la lunghezza di tutte le nostre righe di dati per applicare i calcoli a ciascuna riga.

Una volta eseguita questa operazione, ciascuna riga deve visualizzare i rispettivi riepiloghi.

Ora vogliamo ottenere i dati di riepilogo per l'intero foglio, quindi applichiamo qualche altro calcolo:

Rispettivamente:

  • = SOMMA( L2: L21)
  • = MEDIA( B2: K21) * Questo deve essere calcolato su tuttidati perché la media delle medie di riga non corrisponde necessariamente alla media di tutti i valori.
  • = MIN( N2: N21)
  • = MAX( O2: O21)
  • = MEDIANTE( B2: K21) * Calcolato su tutti i dati per lo stesso motivo di cui sopra.

Ora che i calcoli sono fatti, applicheremo lo stile e la formattazione. Prima applica la formattazione numerica generale su tutte le celle facendo un Seleziona tutto( Ctrl + A o fai clic sulla cella tra le intestazioni di riga e colonna) e seleziona l'icona "Stile virgola" nel menu Home.

Quindi applicare una formattazione visiva alle intestazioni di riga e colonna:

  • Bold.
  • centrato.
  • Colore di riempimento sfondo.

Infine, applicare uno stile ai totali.

Al termine, ecco come appare la nostra scheda dati:

Dato che siamo soddisfatti dei risultati, interrompere la registrazione della macro. Congratulazioni

: hai appena creato una macro di Excel.

Per utilizzare la nostra macro appena registrata, dobbiamo salvare la nostra cartella di lavoro di Excel in un formato file abilitato per la macro. Tuttavia, prima di farlo, dobbiamo prima cancellare tutti i dati esistenti in modo che non siano incorporati nel nostro modello( essendo l'idea ogni volta che usiamo questo modello, importeremo i dati più aggiornati).

Per fare ciò, selezionare tutte le celle ed eliminarle.

Con i dati ora cancellati( ma le macro ancora incluse nel file Excel), vogliamo salvare il file come file modello abilitato alla macro( XLTM).È importante notare che se si salva questo file come modello standard( XLTX), le macro non possono essere eseguite da .In alternativa, è possibile salvare il file come file modello legacy( XLT), che consentirà l'esecuzione di macro.

Dopo aver salvato il file come modello, andare avanti e chiudere Excel.

Utilizzo di una macro Excel

Prima di illustrare come è possibile applicare questa macro appena registrata, è importante coprire alcuni punti relativi alle macro in generale: le macro

  • possono essere dannose.
  • Vedi il punto sopra. Il codice VBA

è in realtà abbastanza potente e può manipolare file al di fuori dell'ambito del documento corrente. Ad esempio, una macro potrebbe alterare o eliminare file casuali nella cartella Documenti. Pertanto, è importante assicurarsi che solo esegua macro da fonti attendibili.

Per utilizzare la macro del formato dati, aprire il file modello Excel creato in precedenza. Quando si esegue questa operazione, presupponendo che siano attivate le impostazioni di sicurezza standard, verrà visualizzato un avviso nella parte superiore della cartella di lavoro che indica che le macro sono disabilitate. Perché ci fidiamo di una macro creata da noi stessi, fare clic sul pulsante "Attiva contenuto".

In seguito, importeremo il set di dati più recente da un CSV( questa è la fonte del foglio di lavoro utilizzato per creare la nostra macro).

Per completare l'importazione del file CSV, potrebbe essere necessario impostare alcune opzioni affinché Excel possa interpretarlo correttamente( ad esempio delimitatore, intestazioni presenti, ecc.).

Una volta importati i nostri dati, è sufficiente andare al menu Macro( sotto la scheda Visualizza) e selezionare Visualizza macro.

Nella finestra di dialogo risultante, vediamo la macro "FormatData" che abbiamo registrato sopra. Selezionalo e fai clic su Esegui.

Una volta avviato, potresti vedere il cursore saltare per qualche istante, ma come vedrai i dati che sono stati manipolati esattamente mentre lo abbiamo registrato. Quando tutto è stato detto e fatto, dovrebbe apparire proprio come il nostro originale - tranne che con dati diversi.

Guardando sotto i baffi: cosa fa funzionare una macro

Come abbiamo menzionato un paio di volte, una macro è guidata dal codice Visual Basic for Applications( VBA).Quando si "registra" una macro, Excel sta effettivamente traducendo tutto ciò che si fa nelle rispettive istruzioni VBA.Per dirla semplicemente - non devi scrivere alcun codice perché Excel sta scrivendo il codice per te.

Per visualizzare il codice che esegue la nostra macro, dalla finestra di dialogo Macro cliccare sul pulsante Modifica.

La finestra che si apre visualizza il codice sorgente che è stato registrato dalle nostre azioni durante la creazione della macro. Naturalmente, è possibile modificare questo codice o persino creare nuovi macro interamente all'interno della finestra del codice. Sebbene l'azione di registrazione utilizzata in questo articolo soddisfi la maggior parte delle esigenze, azioni più personalizzate o azioni condizionali richiederebbero la modifica del codice sorgente.

Prendendo il nostro esempio One Step Farther. ..

Ipoteticamente, supponiamo che il nostro file di dati di origine, data.csv, sia prodotto da un processo automatizzato che salva sempre il file nello stesso percorso( ad es. C: \ Data \ data.csv è sempre il piùdati recenti).Il processo di apertura di questo file e di importazione può essere facilmente trasformato in una macro:

  1. Apre il file di modello Excel contenente la macro "FormatData".
  2. Registra una nuova macro denominata "LoadData".
  3. Con la registrazione macro, importa il file di dati come faresti normalmente.
  4. Una volta importati i dati, interrompere la registrazione della macro.
  5. Elimina tutti i dati della cella( seleziona tutto e poi elimina).
  6. Salva il modello aggiornato( ricorda di utilizzare un formato di modello abilitato alla macro).

Una volta fatto questo, ogni volta che si apre il modello ci saranno due macro: una che carica i nostri dati e l'altra che la formatta.

Se davvero volevi sporcarti le mani con un po 'di editing del codice, puoi facilmente combinare queste azioni in una singola macro copiando il codice prodotto da "LoadData" e inserendolo all'inizio del codice da "FormatData".

Scarica questo modello

Per tua comodità, abbiamo incluso sia il modello Excel prodotto in questo articolo, sia un file di dati di esempio con cui puoi giocare.

Scarica Excel Macro Template da How-To Geek