Debug di una macro (Microsoft Excel)
In Excel, le macro sono scritte in un linguaggio chiamato Visual Basic for Applications o VBA. Quando scrivi una macro, devi testarla e correggere eventuali errori nella macro. Questo processo è chiamato debugging. Il processo di debug di una macro in VBA è lo stesso del debug in qualsiasi altro linguaggio di programmazione. Tutto quello che devi fare è scorrere la macro, un comando alla volta, e assicurarti che funzioni come pensi che dovrebbe. Puoi farlo visualizzando sia le finestre della macro che un foglio di lavoro di prova. Man mano che si passa attraverso la macro (utilizzando i comandi disponibili nel menu Debug dell’editor VBA), è possibile correggere eventuali errori individuati. (Mi piace particolarmente usare il tasto F8 per scorrere la macro una riga alla volta.)
Mentre esegui il debug delle macro, devi assicurarti di pensare a tutti i modi possibili in cui la macro potrebbe essere utilizzata e tutte le possibili condizioni che potrebbero esistere nel momento in cui la macro viene invocata. Prova la macro in tutti questi modi e in tutte queste condizioni. In questo modo renderai la tua macro molto più utile.
Non sorprenderti, tuttavia, se dai la tua cartella di lavoro ad alcuni amici e scoprono bug a cui non hai mai pensato. In questi casi, il processo di debug è identico a quello menzionato sopra, tranne per il fatto che usi i loro dati come foglio di lavoro di prova. Prova a passare attraverso la macro utilizzando i loro dati, una riga alla volta, finché non scopri dove il tuo codice è andato storto e poi risolvilo.
_Nota: _
Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.
ExcelTips è la tua fonte di formazione economica su Microsoft Excel.
Questo suggerimento (2310) si applica a Microsoft Excel 97, 2000, 2002 e 2003. Puoi trovare una versione di questo suggerimento per l’interfaccia a nastro di Excel (Excel 2007 e versioni successive) qui: