Accedi per seguire   
Seguaci 0
Alexsandra

Vba : Ambiente Di Sviluppo E Generatore Di Macro

1 messaggio in questa discussione

Ambiente di sviluppo e generatore di macro

Molto spesso vediamo in rete che si parla di Excel "avanzato" è una terminologia che implica l'uso di formule e funzioni evolute ma anche di personalizzare Excel programmandolo a nostro piacimento. Questa possibilità esiste in quanto al suo interno Excel contiene un linguaggio di programmazione denominato "Visual Basic for Application" in sintesi VBA, è un linguaggio molto simile al vecchio Basic o Quick Basic e abbastanza simile al moderno Visual Basic, in pratica tramite codice programmabile possiamo far compiere ad Excel operazioni che non è possibile effettuare con l'uso tradizionale, questa procedura è attuabile inserendo delle Macro.

Una macro è un programma composto da un insieme di istruzioni che permettono di eseguire un compito ripetitivo, per iniziare possiamo definirle così, più avanti vedremmo che possiamo usarle per fare tante altre cose, adesso fermiamoci a questa definizione un po' semplicistica tanto per poter comprenderne meglio il loro utilizzo.

Registratore di macro

Cominciamo con un esempio pratico, se tutti i giorni voglio aprire un file che si chiama "Lezione1" e scrivere nella cella A1 del Foglio 1 "Inizio, ore 08,00" e nella cella A1 del Foglio 2 "Fine ore 12,00 " potremmo automatizzare questa procedura usando una macro. Per poter mandare in esecuzione una macro dobbiamo verificare il grado di protezione che abbiamo impostato in Excel, lo possiamo vedere attraverso questo percorso Strumenti - Macro - Protezione e ci comparirà una maschera come quella sotto riportata

%25231old_01.png Fig. 1

Impostando il livello di protezione su medio, come vedete in figura, vi verrà mostrato un messaggio di avviso ogni volta che andrete ad aprire file che conterranno macro, e vi permetterà di scegliere se eseguirle o meno. Il messaggio che vi apparirà è il seguente

%25231old_02.png Fig. 2

Dobbiamo inoltre ricordare di fare attenzione, le macro possono contenere codice dannoso o anche un'applicazione virale, pertanto fate attenzione nell'aprire file che vi riporteranno il messaggio sopra esposto, aprite file contenenti macro solo se siete certi della fonte. Fatta questa premessa iniziamo a costruire la nostra prima macro, possiamo utilizzare il Registratore di Macro presente in Excel, che ci permette di poter operare "manualmente" sul nostro file e tutte le nostre operazioni verranno convertite in codice attraverso questa funzione, che si trova nel menu Strumenti - Macro - Registra nuova macro

%25231old_03.png Fig. 3

Eseguita questa operazione ci comparirà una maschera come questa sotto riportata

%25231old_04.png Fig. 4

Vediamo i vari campi che compaiono in questo box

Nome macro: è il nome che vogliamo dare alla nostra macro, Excel riporta per default "Macro1", potete scrivere il nome che volete assegnare

Tasto di scelta rapida: serve per eseguire la macro direttamente dalla tastiera; inserendo Z nell'apposito campo, per eseguire la macro usare la combinazione di tasti CTRL+Z

Memorizza macro in: consiglio di lasciare così come appare in figura

Descrizione: per default mostra il nome dell'autore autore e la data di creazione

Premiamo ora sul tasto OK e procediamo alla creazione della macro, ci troviamo col cursore nella cella A1 del foglio1 e scriviamo la frase "Inizio, ore 08,00" senza le virgolette e poi premiamo il tasto Invio. Portiamoci ora nel Foglio 2 e nella cella A1 e scriviamo la frase "Fine ore 12,00" sempre senza le virgolette e premiamo ancora Invio, ritorniamo poi al Foglio1 e possiamo anche interrompere la registrazione della nostra macro in questo modo: Strumenti - Macro - Interrompi registrazione

%25231old_05.png Fig. 5

A questo punto la nostra macro è stata creata, la procedura di fine registrazione può essere eseguita nel modo descritto oppure al momento della registrazione può comparirvi anche un box come il seguente

%25231old_06.png Fig. 6

Vi rimarrà sullo schermo, potete spostarlo come volete, e per fermare la registrazione basta premere sul pulsante quadrato che vedete in figura, a questo punto possiamo verificare se funziona, cancelliamo quello che abbiamo scritto nei due fogli e proviamo a mandarla in esecuzione, la possiamo eseguire dal menu Strumenti - Macro - Macro

%25231old_07.png Fig. 7

E si apre una maschera come la seguente

%25231old_08.png Fig. 8

In questo box troverete tutte le macro che registrerete o scriverete direttamente all'interno dell'editor, basta solo premere sul pulsante Esegui , e manderete in esecuzione la macro e nei 2 fogli troverete il testo che prima avevate cancellato. Potete eseguirla anche utilizzando il tasto di scelta rapida che avevamo impostato in precedenza (CTRL+Z), abbiamo creato la macro e mandata in esecuzione, ma vediamo come è potuto succedere, inoltriamoci ora nell'editor di VBA e vediamo come è fatto. Dal menu Strumenti - Macro - Visual Basic Editor oppure premendo la combinazione di tasti ALT+F11 entreremo nell'editor e ci verrà mostrata una schermata così

%25231old_09.png Fig. 9

Sulla sinistra compare la finestra del progetto, se espandiamo la cartella "Moduli" e clicchiamo sulla voce "Modulo1" nella finestra di destra ci apparirà il codice convertito automaticamente per eseguire l'istruzione.

Per il momento non addentriamoci in spiegazioni tecniche sul significato del codice, lo affronteremo meglio nelle prossime lezioni quando avremmo appreso i concetti basilari della programmazione VBA, per il momento notate che il codice è racchiuso tra 2 comandi di Inizio e fine delle istruzioni cioè Sub Macro1() .... End Sub mentre tutte le righe precedute dall'apice singolo (') stanno ad indicare i commenti, nel vecchio linguaggio Basic corrisponde alla funzione REM

Modificato da Alexsandra

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
Accedi per seguire   
Seguaci 0