Excel - MACRO


Uno strumento semplice e per chiunque

Inserire la scheda di Sviluppo

Per inserire la scheda Sviluppo in Excel, sulla barra multifunzione, ti basterà posizionarti sulla scheda File, della barra multifunzione e, nella barra laterale di sinistra, cliccare sul comando Opzioni. Nella finestra di dialogo che si apre vai sulla voce Personalizzazione barra multifunzione. Nel riquadro di sinistro, nel menu a tendina Scegli comandi da, scegli la voce Tutte le schede. Seleziona Sviluppo,in Schede principali, e assicurati che, nel riquadro di destra, nel menu a tendina di Personalizza barra multifunzione, sia presente la voce Schede principali.

Utilità di una MACRO

Ci si trova spesso a dover ripetere sempre le stesse operazioni prima di poter analizzare un set di dati o a dover utilizzare procedure per avere il formato delle variabili come ci è più comodo. Queste operazioni di solito sono lunghe, semplici ma se ci si dimentica di fare qualcosa poi ci sono degli errori e bisogna ripetere tutto. In questi casi ci viene in aiuto Excel creando la possibilità di fare delle macro, ossia registrare determinate azioni per poi poterle ripetere attraverso una combinazioni di tasti (ctrl +) o attraverso l'utilizzo di un pulsante.

Creare una MACRO

  1. Dalla scheda "Sviluppo" clicca su pulsante "Registra macro"

  2. Dalla finestra di dialogo "registra macro", nella casella "Nome macro" scrivere il nome con il quale si vuole chiamare la macro e, se si vuole, si può assegnare una combinazione di tasti (ctrl+...) per richiamare più velocemente la funzione.

  3. Eseguire le azioni che vogliamo inserire nella macro
    ...
    ...
    ...
    ...
  4. Clicca sul comando "Interrompi registrazione", per terminate la Macro.

Esempi MACRO

Esempio 1:

Il comando incolla per valori non ha uno shortcut preimpostato in excel ma capita spesso di doverlo utilizzare. Per creare uno shortcut si può utilizzare la funzione registra macro: Questa procedura molto semplice ci permette di aver assegnato allo shortcut scelto il comando incolla per valori.

Esempio 2:

Personalmente io preferisco sempre programmare le macro con VBA come si vedrà nella prossima sezione ma un esempio di un problema con cui alcune volte mi sono dovuto cimentare consiste nel togliere da un foglio di calcolo i riferimenti. Questo problema di per se non è un problema difficile, anzi, basta selezionare tutto (Ctrl + A) e poi reincollare per valori, SEMPLICE!
In realtà ci sono alcune insidie quando ci si trova a lavorare con tanti formati differenti tipo date (che nel copia e incolla per valori perdono il formato e poi devi riaggiustare il formato colonna per colonna) o con una combianzione di un grande dataset, che sarebbe meglio non gestire in Excel, e un computer non molto potente, in questi casi il computer può crashare e Excel bloccarsi oppure ti dice che la selezione da copiare è troppo grande.
Quindi la soluzione che in questo caso può essere utilizzata è copiare e incollare per valori solo le colonne che mi interessano e quando è oppurtuno, tipo per le date, predisporre gia il cambio di formato.

Manualmente dovrei fare:

5 comandi per un totale di circa 3/5 minuti li faremo diventare secondi!

Una volte eseguite queste operazioni cosi come descritte avremo una macro collegata con lo shortcut che gli abbiamo dato.

Codice VBA della macro:




Sub Macro1()

'
' Macro1 Macro
' Macro di prova
'
' Scelta rapida da tastiera: CTRL+g
'

Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Selection.NumberFormat = "m/d/yyyy"
End Sub


Per l'interpretazione del codice VBA della macro si lascia al capitolo successivo.




Salvare file Excel con macro

Per salvare un file excel con l'utilizzo delle macro è necessario salvarlo con nome nel formato Cartella di lavoro con attivazione di macro ossia .xlsm:





Le macro create e salvate come sopra vengono salvate all'interno del documento ma non sono valide al di fuori. Quindi una volta salvata la macro, chiuso il documento e aperto un altro, non è più valida. Come facciamo allora ad estendere l'utilizo di una macro al di fuori del documento?

La procedura più semplice anche se un po' macchinosa consiste nel creare un componente aggiuntivo.

Per prima cosa andiamo a creare le macro in un documento nuovo e vuoto (o a copiare il codice in VBA all'interno di un nuovo modulo di un nuovo documento). Una volta create le macro che ci interessa estendere a tutti i documenti salviamo il file come .xlam ossia come componente aggiuntivo in una posizione dalla quale non lo sposteremo.


Concluso il salvataggio dobbiamo andare a caricarlo in Excel andando su Sviluppo > Componenti aggiuntivi di Excel

poi clicchiamo su sfoglia e andiamo a selezionare il file che abbiamo salvataggio

ed infine gli mettiamo la spunta per caricarlo all'interno di tutti i documenti.