Excel VBA Do Loop

Hay 2-3 tipos de bucles en VBA. Algunos bucles funcionan cuando la condición es VERDADERA y otros funcionan cuando la condición se vuelve FALSA . Excel VBA Do Loop es de ese tipo que funciona hasta que la condición es VERDADERA y se cierra cuando la condición se vuelve FALSA. Do Loop es de 2 tipos, que es Do-Hasta loop y Do-While Loop. Do Loop comienza a funcionar solo cuando la condición satisface el requisito y luego necesitamos definir la condición de salida también cuando el ciclo se detendrá. Si no definimos esto, el ciclo se ejecutará hasta el límite de los tipos de datos definidos.

A continuación se muestra la sintaxis de Do Loop:

Do While/ Until (Condition) (Statement) Exit Do
(Statement) Loop

¿Cómo usar Do Loop en Excel VBA?

Aprenderemos cómo usar Do Loop en Excel usando el Código VBA.

Puede descargar esta plantilla de Excel VBA Do Loop aquí - Plantilla de VBA Do Loop Excel

VBA Do Loop - Ejemplo # 1

En este ejemplo, veremos cómo funciona Do Before Loop. Ejecutaremos la condición donde Do loop imprimirá el número hasta que la condición sea VERDADERA y se excite una vez que la condición se vuelva FALSA.

Paso 1: Ahora, abra un Módulo desde la pestaña del menú Insertar primero como se muestra a continuación.

Paso 2: En eso, escriba el subprocedimiento de VBA Do Loop como se muestra a continuación o puede elegir cualquier nombre para definir el nombre del código.

Código:

 Sub VBA_DoLoop () End Sub 

Paso 3: Defina una variable como un entero. Es porque usaremos números con Do Loop.

Código:

 Sub VBA_DoLoop () Dim A como Integer End Sub 

Paso 4: Asigne un valor a la variable A. Digamos que el valor es 1. Este valor es la posición de la celda desde donde veremos los valores que se imprimen. Aquí, los valores se verán desde la celda A1. Si elegimos 2, el valor se imprimirá desde la celda 2.

Código:

 Sub VBA_DoLoop () Dim A como entero A = 1 End Sub 

Paso 5: Ahora abra Do hasta el bucle, como se muestra a continuación. Aquí es donde escribiremos el código.

Código:

 Sub VBA_DoLoop () Dim A como entero A = 1 Do hasta que finalice el bucle Sub 

Paso 6: Ahora escriba la condición para Do Before Loop. Digamos que queremos ver los números hasta la celda 5.

Código:

 Sub VBA_DoLoop () Dim A como entero A = 1 Do hasta A> 5 Loop End Sub 

Paso 7: Escribe el enunciado donde veremos el número de la primera celda de la columna A ( Columna 1 ). Y también, elija el valor que queremos ver. Aquí hemos elegido el número 20.

Código:

 Sub VBA_DoLoop () Dim A como entero A = 1 Do hasta A> 5 celdas (A, 1) .Value = 20 Loop End Sub 

Paso 8: Ahora da la declaración de salida por fin. Aquí queremos salir del bucle Do Hasta cuando llegue a la celda +1 de la celda inicial.

Código:

 Sub VBA_DoLoop () Dim A como entero A = 1 Do hasta A> 5 celdas (A, 1) .Value = 20 A = A + 1 Loop End Sub 

Paso 9: compile el código y ejecútelo haciendo clic en el botón Reproducir ubicado debajo de la barra de menú como se muestra a continuación.

Paso 10: veremos que el número se imprimió de la celda 1 a la 5 con el número 20.

Paso 11: Ahora, si cambia el punto de inicio de referencia de 1 a 2 en la variable A y vea lo que obtendremos.

Código:

 Sub VBA_DoLoop () Dim A como entero A = 2 Do hasta A> 5 celdas (A, 1) .Value = 20 A = A + 1 Loop End Sub 

Paso 12: Ejecute nuevamente el código. Veremos, ahora los valores se imprimen desde la celda 2 (que es la celda de referencia) a la celda 5 (que es la última celda).

VBA Do Loop - Ejemplo # 2

En este ejemplo, veremos cómo funciona Do While Loop. Do While también funciona cuando la condición se vuelve VERDADERA. Según la sintaxis, Ejecute la condición definida Mientras que la instrucción seleccionada es VERDADERA y Salga del bucle cuando la condición de salida es VERDADERA. Usaremos el bucle Do While y agregaremos un número de números ya creados y obtendremos el resultado en una columna diferente.

Para esto, siga los pasos a continuación:

Paso 1: escriba el subprocedimiento para el ciclo Do While como se muestra a continuación.

Código:

 Sub VBA_DoLoop2 () End Sub 

Paso 2: Ahora también para este ejemplo, necesitaríamos una variable y un punto de referencia desde donde veremos los números. Por lo tanto, considere los primeros 2 pasos del ejemplo-1 como se muestra a continuación.

Código:

 Sub VBA_DoLoop2 () Dim A como entero A = 1 End Sub 

Paso 3: Ahora abra la sintaxis Do While Loop como se muestra a continuación.

Código:

 Sub VBA_DoLoop2 () Dim A como entero A = 1 Do While Loop End Sub 

Paso 4: Ahora escriba la condición donde Do While ejecutará el ciclo mientras el valor de la celda no es igual () a En blanco . Además, considere la entrada del valor a las celdas desde la primera columna de la hoja.

Código:

 Sub VBA_DoLoop2 () Dim A como entero A = 1 Do While Cells (A, 1) .Value "" Loop End Sub 

Paso 5: Ahora, desde la segunda posición de la hoja, obtenga el resultado agregando un número a cada celda que no esté en blanco. Y digamos que ese número sea 5.

Código:

 Sub VBA_DoLoop2 () Dim A como entero A = 1 Do While Cells (A, 1) .Value "" Cells (A, 2) .Value = Cells (A, 1) .Value + 5 Loop End Sub 

Paso 6: Y en condición de salida, escriba la condición para salir del bucle si la siguiente celda está en blanco.

Código:

 Sub VBA_DoLoop2 () Dim A como entero A = 1 Do While Cells (A, 1) .Value "" Cells (A, 2) .Value = Cells (A, 1) .Value + 5 A = A + 1 Loop End Sub 

Paso 7: Ejecute nuevamente el código presionando la tecla F5 o haciendo clic en el botón Reproducir. Veremos, en la siguiente columna de A, que es B, la nueva lista de números se ha agregado con la adición de +5 a cada celda que tiene valores.

Paso 8: supongamos que si eliminamos un valor de celda de entre la lista.

Paso 9: Después de ejecutar el código nuevamente, veremos que hay una interrupción en la celda A8 para que Do While salga de allí. Y agregó +5 cada número de celda hasta A7 que tiene la salida de B1 a B8.

Pros de Excel VBA Do Loop

  • Es tan fácil de implementar y rápido de ejecutar que no lleva tiempo terminarlo.
  • Escribiremos como una condición típica que queremos si eso es VERDADERO.
  • Podemos usar tanto Do While como Do Does Loop en la combinación.

Cosas para recordar

  • La mejor manera de salir del bucle es dar la condición FALSA más cerca de la condición VERDADERO.
  • Podemos usar más de 1 condición en Do Loop si esas condiciones son VERDADERAS.
  • Es necesario dar la condición de Salida. Si no lo hacemos, entonces el ciclo se ejecutará continuamente hasta que tenga el límite o nunca dejará de ejecutarse.
  • Guarde el archivo de Excel en formato de habilitación de macro para retener el código.

Artículos recomendados

Esta es una guía de VBA Do Loop. Aquí discutimos cómo usar Do Loop en Excel VBA junto con ejemplos prácticos y una plantilla de Excel descargable. También puede consultar nuestros otros artículos sugeridos:

  1. Colección VBA (Ejemplos)
  2. Declaraciones VBA IF | Plantillas Excel
  3. ¿Cómo utilizar la función de clasificación de Excel VBA?
  4. VBA While Loop (Ejemplos con plantilla de Excel)
  5. VBA Environ

Categoría: