You are here:--Programmazione del Nonno #5 Come funziona la macro

Programmazione del Nonno #5 Come funziona la macro

Ciao eccoci di nuovo, questa volta per vedere praticamente come funziona la nostra macro, che è questa, metto l’immagine in modo che si vede cos’ha combinato Excel, cosi vediamo il nostro editore.

Vediamo il Modulo1 a sx e la macro nella finestra grande, le altre 2 finestra a sx sono vuote.

Ma prima di cominciare vediamo 3 comandi importanti “F5” che serve a lanciare la Macro, “F8” che serve a proseguire “Passo-Passo” la macro processando 1 riga alla volta ed infine “F9” che serve a mettere un punto di interruzione della macro, cioè bloccare la macro in quel determinato punto.

La prima cosa spostiamo il cursore vicino a “Public …” in alto dovremmo vedere dove ce Riga e Colonna 

Riga3 – Col1

A questo punto premiano “F9” per mettere il punto di interruzione, fatto questo il nostro editore ha inserito il punto di interruzione mettendo un punto sul bordo e evidenziando in Marrone la scritta della riga3.

Ora dobbiamo avviare la macro quindi premiamo “F5”, avviene subito un cambiamento sostanziale, l’evidenziazione da marrone passa al Giallo, e nello stesso momento vediamo nella finestra a sx in basso, quella delle Variabili, ha riconosciuto che nella macro esiste la Variabile “Contatore” ma al momento è vuota com’è specificato.

Adesso vogliamo vedere che succede spostando il cursore quindi premiamo “F8” ed ecco il cambiamento

Si è spostata una riga più in basso, le macro vengono lette ed eseguite una riga alla volta.

Poi premo di nuovo “F8” e passo ancora alla riga successiva, per una visione migliore ho spostato la finestre delle variabili al posto delle proprietà che al momento non serve, e nello stesso momento ho visualizzato il foglio Excel, a questo punto vediamo cosa succede:

Come si può vedere la variabile “Contatore” ha preso il valore di 1, lo vediamo nella finestra delle variabili, quindi questo  è il primo ciclo, premo di nuovo “F8” e vediamo cosa succede:

Il cursore si è spostato sotto su “Next Contatore”, però leggendo la riga

Cells(Contatore, 1) = Contatore(Ricordate che contatore e uguale a 1)

Nella cella “A1” del foglio ha scritto “1”, cioè quello che volevamo noi ora premo di nuovo “F8” e vediamo il nuovo passaggio.

come si vede il cursore è ritornato alla riga superiore, ma facendo questo date un occhiata alla finestra delle variabili “Contatore” è diventato 2 cioè si è incrementato di una unità, adesso premiamo di nuovo “F8” ed il ciclo si ripete, ma nello stesso momento ha inserito il numero 2 nella cella “A2” perche “Contatore” ha valore 2

adesso siccome abbiamo messo 100 come FINE questo ciclo lo ripete 100 volte scrivendo il valore nella cella consecutiva della colonna “A” ed avremo una situazione del genere al 100° ciclo

che come si vede ha nella finestra delle variabili “Contatore” ha valore 100 e nello stesso momento ha scritto 100 nella 100° cella della colonna “A”, ma vediamo a questo punto che succede premendo di nuovo “F8”

Il Cursore si è portato su “End Sub” finendo la Macro, ma noterete pure che comunque nella Finestra delle variabili “Contatore” ha preso il valore di 101 ed essendo maggiore di 100 non ha fatto un altro ciclo.

Ora se premo di nuovo “F8” il cusore giallo finisce perche la macro è finita.

Per chi volesse scaricare l’esempio ecco il link sul mio DropBox

https://www.dropbox.com/s/8l35ik68tewi6iy/ProgNonno%235.xlsm?dl=0

Nel prossimo argomento tratteremo l’evento decisionale “If..Else..Endif”

By |2019-03-20T09:25:46+02:00Marzo 19th, 2019|Categories: Programmazione del Nonno|Commenti disabilitati su Programmazione del Nonno #5 Come funziona la macro

About the Author:

BySalv
Excel si può amare od odiare, l'importante che sai usarlo

Utilizzando il sito, accetti l'utilizzo dei cookie da parte nostra. maggiori informazioni

Questo sito utilizza i cookie per fornire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o cliccando su "Accetta" permetti il loro utilizzo.

Chiudi