Le Macro in Excel
Ultima modifica: 21-06-2016

Quando siamo stanchi di compiere azioni ripetitive, o di eseguire calcoli complicati, o vogliamo compiere con Excel azioni inusuali, è arrivato il momento di cominciare ad automatizzare tutto.

Per chi si affaccia per la prima volta nella camera segreta di Excel (il VBA, appunto) prova un po' di timore e, soprattutto, non sa da che parte cominciare. Ma niente paura! Il primo approccio lo faremo dal foglio di Excel, che forse ci è più famigliare.

E' per questo che cominceremo ad usare uno strumento che Excel ci mette a disposizione e che molti ignorano: parlo del Registratore di Macro.

Questo strumento può essere raggiunto in diversi modi:

dal menù strumenti scegliamo Macro - Registra Nuova Macro

oppure dalla barra Visual Basic premendo il piccolo pulsantino rosso

Si aprirà una finestra che ci chiederà che nome dare alla Macro:

Facendo clic su OK ci appare una nuova barra (la barra di registrazione) per avvisarci che da questo momento qualsiasi azione compiremo sarà registrata.

La prima Macro

A questo punto cominciamo ad eseguire alcune azioni.

Tanto per fare una cosa utile, ma semplice ci prefiggiamo di registrare le azioni compiute per formattare una cella.

Fatto questo interrompiamo la registrazione della macro premendo sul quadratino blu della barra di registrazione.

Adesso siamo pronti per andare a vedere la macro così generata nell'editor di VBA. Quel che vedremo non è certo molto edificante. Eccola.

Dopo aver visto l'intera macro e fatto tesoro di tutte le istruzioni, utili e non utili in questa circostanza, possiamo iniziare ad eseguire la pulizia. Questa pulizia consiste nel cancellare tutte quelle istruzioni che sono rimaste coi valori di default (FontStyle = "Normale", Strikethrough = False, Superscript = False, Subscript = False, OutlineFont = False, Shadow = False, Underline = xlUnderlineStyleNone, ecc.) e che in questa circostanza non ci interessa impostare in modo differente.

Alla fine possiamo vederne la versione finale che potrebbe essere la seguente:

Sub Macro1()
Range("C5").Select
With Selection.Font
.Name = "Times New Roman" 'nome del carattere
.ColorIndex = 3 'il colore del carattere
End With
With Selection.Borders
.LineStyle = xlContinuous
End With
With Selection.Interior
.ColorIndex = 37
End With
End Sub

Per qualcuno potrebbe essere problematico raggiungere l'editor VBA. Ma vi assicuro che è semplicissimo.

Lo vedremo nel seguente articolo