Sommario:
- Applicazione di commenti di blocco
- Copia di più righe di codice
- Salto tra i moduli e le procedure
- Teletrasporto alle tue funzioni
- Rimanere nella giusta procedura
- Passaggio del codice
- Passaggio a una riga di codice specifica
- Arresto del codice in un punto predefinito
- Visualizzazione dei valori delle variabili iniziali e finali
- Disattivazione della sintassi automatica Verifica
Video: Crack di un programma, come funziona con OllyDbg 2024
Se si impiegherà tempo a lavorare con i macro in Visual Basic Editor, perché non approfittare di alcuni dei seguenti gli strumenti integrati che renderanno più facile il tuo lavoro? Questi suggerimenti miglioreranno notevolmente la tua esperienza di programmazione macro.
Applicazione di commenti di blocco
Posizionando un singolo apostrofo davanti a qualsiasi riga di codice, Excel salta questa riga di codice. Questa tecnica è chiamata codice di commento. La maggior parte dei programmatori usa l'apostrofo singolo per creare commenti o note nel codice, come mostrato qui.
A volte è utile commentare più righe di codice. In questo modo, è possibile testare determinate righe di codice mentre si dice a Excel di ignorare le righe commentate.
Invece di passare il tempo a commentare una riga alla volta, è possibile utilizzare la barra degli strumenti Modifica per commentare un intero blocco di codice.
Per attivare la barra degli strumenti Modifica, andare al menu VBE e scegliere Visualizza → Barre degli strumenti → Modifica. Selezionare le righe di codice che si desidera commentare e quindi fare clic sull'icona Blocco commento sulla barra degli strumenti Modifica, come mostrato qui.
Utilizzare la barra degli strumenti Modifica per applicare commenti a un blocco di codice.Copia di più righe di codice
Puoi copiare interi blocchi di codice evidenziando le linee che ti servono, e quindi tenendo premuto il tasto Ctrl mentre trascini il blocco. Questo vecchio trucco di Windows funziona anche quando trascini i moduli.
Saprai che stai trascinando una copia quando il cursore mostra un simbolo più accanto ad esso, come mostrato qui.
Ctrl-trascina per creare una copia.Salto tra i moduli e le procedure
Dopo che la cache del codice macro inizia a crescere, può essere fastidioso spostarsi rapidamente tra i moduli e le procedure. Puoi alleviare il dolore usando alcuni tasti di scelta rapida.
-
Premere Ctrl + Tab per spostarsi rapidamente tra i moduli.
-
Premere Ctrl + Pagina su e Ctrl + Pagina giù per spostarsi tra le procedure all'interno di un modulo.
Teletrasporto alle tue funzioni
Durante la revisione di una macro, potresti incontrare una variabile o un nome di funzione che ovviamente sta puntando ad un'altra porzione di codice. Invece di setacciare tutti i moduli per scoprire da dove proviene quella funzione o il nome della variabile, puoi semplicemente posizionare il cursore su quella funzione o nome di variabile e premere Maiusc + F2.
Come illustrato in questa figura, si viene immediatamente teleportati all'origine di tale funzione o nome di variabile. Premendo Ctrl + Maiusc + F2 si ritorna al punto di partenza.
Premere MAIUSC + F2 su una funzione o nome di variabile da utilizzare.Rimanere nella giusta procedura
Quando i moduli contengono più procedure, scorrere una particolare procedura senza scorrere inavvertitamente in un'altra procedura può essere difficile. Ti troverai spesso a scorrere verso l'alto e poi verso il basso, cercando di tornare al codice corretto.
Per evitare questa assurdità, fai clic sul pulsante Vista procedura nell'angolo in basso a sinistra di VBE, come mostrato qui. Ciò limita lo scorrimento alla sola procedura in uso.
Limita lo scorrimento alla procedura attiva.Passaggio del codice
Per scorrere il codice, è necessario mettere la macro in modalità di debug. Basta posizionare il cursore ovunque nella macro e quindi premere il tasto F8.
Nella programmazione, il termine debugging significa trovare e correggere possibili errori nel codice. Uno degli strumenti di debug più utili è la possibilità di scorrere il codice una riga alla volta. Quando passi attraverso il codice, stai guardando che ogni riga viene eseguita.
La prima riga di codice viene evidenziata e una piccola freccia appare sul margine sinistro della finestra di codice, come mostrato qui. Premere nuovamente F8 per eseguire la riga di codice evidenziata e passare alla riga successiva. Continua a premere F8 per vedere che ogni riga viene eseguita fino alla fine della macro.
Premi F8 per scorrere ciascuna linea della tua macro.Per uscire dalla modalità di debug, vai al menu VBE e scegli Debug → Esci.
Passaggio a una riga di codice specifica
Cosa succede se si desidera iniziare a passare il codice su una linea specifica? Bene, puoi farlo semplicemente spostando la freccia!
Quando una riga di codice è evidenziata in modalità di debug, è possibile fare clic e trascinare la freccia sul margine sinistro della finestra di codice verso l'alto o verso il basso, rilasciandola a qualsiasi riga di codice che si desidera eseguire successivamente, come mostrato qui.
Trascina la freccia mentre passi attraverso il tuo codice.Arresto del codice in un punto predefinito
Quando si imposta un punto di interruzione, il codice verrà eseguito normalmente e quindi arrestato sulla riga di codice in cui è stato definito il punto di interruzione.
Questa tecnica di debug è utile quando si desidera eseguire test di piccoli blocchi di codice alla volta. Ad esempio, se si sospetta possa esserci un errore nella macro ma si sa che la maggior parte della macro viene eseguita senza problemi, è possibile impostare un punto di interruzione partendo dalla riga di codice sospetta, quindi eseguire la macro. Quando la macro raggiunge il punto di interruzione, l'esecuzione si ferma. A questo punto, puoi quindi premere il tasto F8 sulla tastiera per vedere come la macro esegue una riga alla volta.
Per impostare un punto di interruzione nel codice, posizionare il cursore nel punto in cui si desidera avviare il punto di interruzione, quindi premere il tasto F9 sulla tastiera. VBA contrassegnerà chiaramente il punto di interruzione con un punto nel margine sinistro della finestra Codice e la riga di codice stessa sarà ombreggiata in marrone.
Un punto di interruzione è contrassegnato da un punto e un testo ombreggiato.Quando la tua macro raggiunge un punto di interruzione, verrà effettivamente messa in modalità di debug. Per uscire dalla modalità di debug, puoi andare al menu VBE e selezionare Debug → Esci.
Visualizzazione dei valori delle variabili iniziali e finali
Se si passa con il mouse su una variabile String o Integer in VBA in modalità di debug, è possibile visualizzare il valore di tale variabile in un suggerimento.Questa funzione consente di visualizzare i valori che vengono passati dentro e fuori le variabili, utile quando si esegue il debug del codice.
Tuttavia, i tooltip possono contenere solo 77 caratteri (incluso il nome della variabile), quindi se il valore nella variabile è troppo lungo, viene troncato. Per vedere oltre i primi 77 caratteri, tieni semplicemente premuto il tasto Ctrl mentre tieni il mouse.
Ecco come appare il tooltip quando si passa con il mouse su una variabile in modalità debug.
I caratteri iniziale e finale in un suggerimento variabile.Disattivazione della sintassi automatica Verifica
Spesso, mentre si lavora su un codice, scoprirai che devi andare su un'altra linea per copiare qualcosa. Non hai finito con la linea; devi solo lasciarlo per un secondo. Ma VBE ti ferma immediatamente nelle tue tracce con un messaggio di errore, simile a quello mostrato qui, che ti avvisa di qualcosa che già conosci.
Una riga di codice non completata genera un messaggio di errore irregolare.Queste finestre di messaggio ti obbligano a interrompere ciò che stai facendo per riconoscere l'errore premendo il pulsante OK. Dopo una mezza giornata di queste brusche caselle di messaggi, sarai pronto a lanciare il computer contro il muro.
Bene, puoi salvare il tuo computer e la tua sanità mentale disattivando Auto Sintassi Verifica. Vai al menu VBE e seleziona Strumenti → Opzioni. Viene visualizzata la finestra di dialogo Opzioni, che mostra la scheda Editor. Deseleziona l'opzione Verifica sintassi automatica per interrompere questi fastidiosi messaggi di errore.
Previene i messaggi di avvertimento durante la codifica.Non preoccuparti di perdere un errore legittimo. Il tuo codice diventerà ancora rosso se ti alzi, fornendo un'indicazione visiva che qualcosa non va.