Este ejemplo enseña cómo depurar código en Excel VBA.

Un escalón

Pulsando F8, puede solo paso a través de su código. El es muy útil ya que le permite ver el efecto de cada línea de código en la hoja de trabajo.

Coloque un botón de comando en la hoja de trabajo y añadir las líneas de código siguientes:

Dim i As Integer, j As Integer

For i = 1 To 2

For j = 1 To 5

Cells(i, j).Value = WorksheetFunction.RandBetween(20, 100)

Next j

Next i

Como resultado al hacer clic en el botón de comando en la hoja:

Without Debugging in Excel VBA

  1. Vaciar el rango A1: E2.

  2. Abra el Editor de Visual Basic y reducir el tamaño de la pantalla para que pueda ver el Editor de Visual Basic y hoja de trabajo al mismo tiempo.

  3. En el Editor de Visual Basic, coloque el cursor antes F8 privada y pulse.

La primera línea se vuelve amarillo.

Single Step

  1. Presione F8 cuatro veces. Para i = 1 y j = 1, Excel VBA entra un número aleatorio entre 20 y 100 en la célula en la intersección de la fila 1 y la columna 1. Al mantener el cursor estacionario sobre una variable, se puede ver el valor de la variable.

Single Step

  1. Presione F8 dos veces más. Para i = 1 y j = 2, Excel VBA entra un número aleatorio entre 20 y 100 en la célula en la intersección de la fila 1 y la columna 2.

Single Step

  1. Solo paso a través del resto del código para ver cómo Excel VBA entra en los otros números. Esta es una excelente manera de aprender cómo funciona un bucle.

Si desea detener el programa, pulse el botón de reinicio (Stop).

Breakpoint

Se establece un punto de interrupción de ejecución alto en una línea de código específico.

  1. Vaciar el rango A1: E2.

  2. Para establecer un punto de interrupción, haga clic en el margen izquierdo (en gris) en la que desea colocar el punto de interrupción. Aparecerá un punto rojo.

Set a Breakpoint

  1. Haga clic en la flecha verde para ejecutar la macro hasta el punto de interrupción.

Resultado:

Continue Execution

Sólo una parte de la macro (para i = 1) ha sido ejecutado.

  1. Para eliminar el punto de interrupción, haga clic en el punto rojo. A continuación, haga clic en la flecha verde para continuar la ejecución.

Si recibe una macro de otra persona, recuerde, la depuración es una gran manera de entender el código. Se puede ver fácilmente el efecto de cada línea de código en la hoja de trabajo.