Casa Social media Debug di tecniche per Excel 2016 VBA - dummies

Debug di tecniche per Excel 2016 VBA - dummies

Sommario:

Video: Excel VBA - Debugging 2025

Video: Excel VBA - Debugging 2025
Anonim

Potresti incontrare qualche problema con il tuo codice VBA, ma come trovi il problema? A volte il tuo codice VBA potrebbe richiedere un po 'di debug. Continua a leggere per scoprire i quattro metodi più comuni per il debug del codice VBA di Excel:

  • Esame del codice

  • Inserimento delle funzioni di MsgBox in varie posizioni nel codice

  • Inserimento di debug. Stampa istruzioni

  • Utilizzo degli strumenti di debug integrati di Excel

Esaminare il codice

Forse la tecnica di debug più semplice è semplicemente dare un'occhiata al codice per vedere se riesci a trovare il problema. Questo metodo, ovviamente, richiede conoscenza ed esperienza. In altre parole, devi sapere cosa stai facendo. Se sei fortunato, l'errore salta fuori e ti schiaffi la fronte e dici "D'oh! "Quando il dolore alla fronte diminuisce, puoi risolvere il problema.

Notare l'uso delle parole, "Se sei fortunato. "Questo perché spesso scopri errori quando hai lavorato al tuo programma per otto ore di fila, è 2 a. m. e tu stai correndo con caffeina e forza di volontà. In momenti come quello, sei fortunato se riesci a vedere il tuo codice, figuriamoci a trovare gli errori. Quindi, non sorprenderti se semplicemente esaminare il tuo codice non è abbastanza per farti trovare e cancellare tutti i bug che contiene.

Uso della funzione MsgBox

Un problema comune in molti programmi implica che una o più variabili non assumono i valori che ci si aspetta. In questi casi, il monitoraggio della / e variabile / e durante l'esecuzione del codice è una tecnica di debug molto utile. Un modo per farlo è inserire le funzioni temporanee di MsgBox nella tua routine. Ad esempio, se si dispone di una variabile denominata CellCount, è possibile inserire la seguente istruzione:

MsgBox CellCount

Quando si esegue la routine, la funzione MsgBox visualizza il valore di CellCount.

È spesso utile visualizzare i valori di due o più variabili nella finestra del messaggio. La seguente istruzione mostra il valore corrente di due variabili: LoopIndex (1) e CellCount (72), separati da uno spazio.

MsgBox LoopIndex & "" & CellCount

Si noti che le due variabili sono combinate con l'operatore di concatenazione (&) e inseriscono un carattere di spazio tra di esse. Altrimenti, la finestra di messaggio stringe i due valori insieme, facendoli apparire come un singolo valore. È inoltre possibile utilizzare la costante incorporata, vbNewLine, al posto del carattere dello spazio. vbNewLine inserisce un'interruzione dell'alimentazione di riga, che visualizza il testo su una nuova riga. L'istruzione seguente mostra tre variabili, ciascuna su una riga separata:

Utilizzo di una finestra di messaggio per visualizzare il valore di tre variabili.
MsgBox LoopIndex e vbNewLine & CellCount & vbNewLine & MyVal

Questa tecnica non è limitata al monitoraggio delle variabili. È possibile utilizzare una finestra di messaggio per visualizzare tutti i tipi di informazioni utili mentre il codice è in esecuzione. Ad esempio, se il codice scorre in una serie di fogli, la seguente istruzione visualizza il nome e il tipo del foglio attivo:

MsgBox ActiveSheet. Name & "" & TypeName (ActiveSheet)

Se la tua casella di messaggio mostra qualcosa di inaspettato, premi Ctrl + Break, e vedi una finestra di dialogo che ti dice che l'esecuzione del codice è stata interrotta, hai quattro scelte:

  • Clicca il Continua il pulsante. Il codice continua a essere in esecuzione.

  • Fai clic sul pulsante Fine. L'esecuzione si ferma

  • Fai clic sul pulsante Debug. Il VBE entra in modalità Debug.

  • Fai clic sul pulsante Guida. Una schermata di aiuto ti dice che hai premuto Ctrl + Break. In altre parole, non è molto utile.

    Premendo Ctrl + Break si interrompe l'esecuzione del codice e si ottengono alcune scelte.

Se la tua tastiera non ha un tasto Break, prova a premere Ctrl + ScrollLock.

Sentiti libero di usare spesso le funzioni di MsgBox quando esegui il debug del tuo codice. Assicurati di rimuoverli solo dopo aver identificato e risolto il problema.

Inserimento di debug. Stampa istruzioni

In alternativa all'utilizzo delle funzioni MsgBox nel codice, puoi inserire uno o più debug temporanei. Stampa dichiarazioni. Utilizzare queste istruzioni per stampare il valore di una o più variabili nella finestra Immediata. Ecco un esempio che mostra i valori di tre variabili:

Debug. Stampa LoopIndex, CellCount, MyVal

Si noti che le variabili sono separate da virgole. Puoi visualizzare tutte le variabili che vuoi con un singolo Debug. Stampa la dichiarazione.

Debug. Stampa invia l'output alla finestra Immediata anche se quella finestra è nascosta. Se la finestra Immediata di VBE non è visibile, premi Ctrl + G (o scegli Visualizza → Finestra Immediata). Ecco alcuni output nella finestra Immediata.

Un debug. L'istruzione di stampa invia l'output alla finestra Immediata.

Diversamente da MsgBox, Debug. Le dichiarazioni di stampa non fermano il tuo codice. Quindi è necessario tenere d'occhio la finestra Immediata per vedere cosa sta succedendo.

Dopo aver eseguito il debug del codice, assicurati di rimuovere tutto il debug. Stampa dichiarazioni. Persino le grandi aziende come Microsoft di tanto in tanto dimenticano di rimuovere il loro debug. Stampa dichiarazioni. In diverse versioni precedenti di Excel, ogni volta che veniva aperto il componente aggiuntivo Strumenti di analisi, si vedevano molti strani messaggi nella finestra Immediata. Questo problema è stato risolto definitivamente in Excel 2007.

Utilizzo del debugger VBA

I progettisti di Excel hanno una profonda familiarità con il concetto di bug. Di conseguenza, Excel include una serie di strumenti di debug che possono aiutare a correggere i problemi nel codice VBA.

Debug di tecniche per Excel 2016 VBA - dummies

Scelta dell'editore

Vantaggi di base della rete - manichini

Vantaggi di base della rete - manichini

Se la verità viene detta, le reti di computer sono un problema da impostare. Perché i vantaggi di avere una rete rendono la pena di crearne uno utile. Non è necessario essere un dottorato di ricerca per comprendere i vantaggi del networking. Le reti riguardano esclusivamente la condivisione. Nello specifico, le reti riguardano la condivisione di tre elementi: informazioni, risorse, ...

Biometria L'accettazione, la privacy e la legge - manichini

Biometria L'accettazione, la privacy e la legge - manichini

La tecnologia biometrica non è affatto universalmente accettata da tutti gli utenti. Ci sono una serie di considerazioni sociali e legali che danno ad ogni organizzazione una pausa prima di fare il salto a capofitto nell'implementazione di un sistema biometrico. Le persone sono più a loro agio con i sistemi di raccolta biometrici che sono i meno intrusivi. Scanner per retina e nasi elettronici sono ...

Biometria Nozioni di base - manichini

Biometria Nozioni di base - manichini

La biometria non è roba da fantascienza. Puoi trovare una dozzina di modi più o meno efficaci per utilizzare la biometria per identificare qualcuno, ognuno dei quali si divide in due classi: la biometria fisiologica misura una parte specifica della struttura o della forma di una porzione del corpo di un soggetto. La biometria comportamentale è più interessata a come ...

Scelta dell'editore

Come creare un nuovo dizionario personalizzato in Excel 2007 - dummies

Come creare un nuovo dizionario personalizzato in Excel 2007 - dummies

In Excel 2007, è possibile creare dizionari personalizzati da utilizzare quando si esegue il controllo ortografico dei fogli di lavoro. Utilizzare il pulsante Aggiungi al dizionario nella finestra di dialogo Controllo ortografico per aggiungere parole sconosciute a un dizionario personalizzato. Per impostazione predefinita, Excel aggiunge queste parole a un file dizionario personalizzato denominato CUSTOM. DIC, ma è possibile creare una nuova personalizzazione ...

Come creare un componente aggiuntivo da un file di cartella di lavoro Excel Excel normale in VBA - modi di dire

Come creare un componente aggiuntivo da un file di cartella di lavoro Excel Excel normale in VBA - modi di dire

Sebbene sia possibile convertire qualsiasi cartella di lavoro di Excel in un componente aggiuntivo, non tutte le cartelle di lavoro traggono vantaggio da questa conversione. Una cartella di lavoro senza macro rende un componente aggiuntivo inutile. In effetti, gli unici tipi di cartelle di lavoro che traggono vantaggio dall'essere convertiti in un componente aggiuntivo sono quelli con macro. Ad esempio, una cartella di lavoro costituita da macro generiche (Sub ...

Come creare una nuova cartella di lavoro in Excel 2010 - dummy

Come creare una nuova cartella di lavoro in Excel 2010 - dummy

Se si lavora in Microsoft Excel 2010 e vuoi iniziare a lavorare in un nuovo file di cartella di lavoro di Excel, puoi facilmente creare una nuova cartella di lavoro. Per fare ciò, puoi usare un comando nella scheda File o una scorciatoia da tastiera. Fare clic sulla scheda File. Excel visualizza la visualizzazione Backstage, in cui è possibile accedere ai comandi relativi ai file. ...

Scelta dell'editore

Usa lo strumento Gomma in Adobe Illustrator CS5 - manichini

Usa lo strumento Gomma in Adobe Illustrator CS5 - manichini

Adobe Illustrator Creative Suite 5 (Adobe CS5) Illustrator è utilizzato per rimuovere rapidamente aree di grafica con la stessa facilità con cui si cancellano i pixel in Photoshop, accarezzando con il mouse su qualsiasi forma o gruppo di forme. Facendo doppio clic sullo strumento Gomma, è possibile definire il diametro, l'angolo e la rotondità della gomma. Se stai usando un ...

Trasforma gli strumenti in Adobe Illustrator CS5 - dummies

Trasforma gli strumenti in Adobe Illustrator CS5 - dummies

I più popolari strumenti di trasformazione in Adobe Creative Suite 5 (Adobe CS5) Illustrator - Rifletti, scala, inclina, rimodella e Trasformazione libera: sono facili da usare e modificano rapidamente la tua illustrazione. Lo strumento Rifletti Niente è simmetrico, giusto? Forse no, ma gli oggetti non creati simmetricamente in Illustrator possono sembrare off-kilter. Utilizzando lo strumento Rifletti, si ...

Quando utilizzare Adobe CS5 Illustrator - dummies

Quando utilizzare Adobe CS5 Illustrator - dummies

Utilizzando Adobe Creative Suite 5 (Adobe CS5) Illustrator anziché Photoshop , ottieni diversi benefici. Potresti aver sentito che Illustrator è migliore per la grafica vettoriale, ma perché e che altro porta? Illustrator può salvare ed esportare immagini nella maggior parte dei formati di file. Scegliendo di salvare o esportare, è possibile creare un ...