MS Excel: Cómo Utilizar La Declaración FOR NEXT VBA En Excel

Última actualización:

¿Te gustaría aprender a usar la declaración FOR NEXT VBA en Excel? Este tutorial de Excel explica cómo usar la declaración FOR NEXT de Excel para crear un bucle FOR en VBA con sintaxis y ejemplos. Te invitamos a quedarte:

Descripción de la declaración FOR NEXT VBA en Excel

MS Excel: Cómo Utilizar La Declaración FOR NEXT VBA En Excel
MS Excel: Cómo Utilizar La Declaración FOR NEXT VBA En Excel

La instrucción FOR NEXT de Microsoft Excel se utiliza para crear un bucle FOR para que puedas ejecutar el código VBA un número fijo de veces.

La instrucción FOR NEXT VBA en Excel es una función incorporada en esta herramienta ofimática que se clasifica como una función lógica. Se puede utilizar como función VBA (VBA) en Excel. Como función de VBA, puedes utilizar esta en el código de macro que se ingresa a través del Editor de Microsoft Visual Basic.

Aquí puedes aprender sobre: Cómo Agrupar Una Tabla Dinámica Por Meses En Excel

Sintaxis de la declaración FOR NEXT VBA en Excel

La sintaxis para crear un bucle FOR usando la instrucción de la declaración FOR NEXT VBA en Excel es:

For counter = start To end [Step increment]

   {…statements…}
Next [counter]

Parámetros o argumentos

Encimera

La variable de contador de bucle.

Comienzo

El valor inicial del contador.

Final

El valor final del contador.

Incremento

Opcional. El valor de ese contador se incrementa en cada pasada a través del bucle. Puede ser un número positivo o negativo. Si no se especifica, se establecerá de forma predeterminada en un incremento de 1 para que cada pasada a través del bucle aumente el contador en 1.

Declaraciones

Las declaraciones de código para ejecutar cada paso a través del bucle.

Devoluciones de la declaración FOR NEXT VBA en Excel

La declaración FOR NEXT VBA en Excel crea un bucle FOR en VBA.

Se aplica a:

  • Excel para Office 365, Excel 2019, Excel 2016, Excel 2013, Excel 2011 para Mac, Excel 2010, Excel 2007, Excel 2003, Excel XP, Excel 2000

Tipo de función:

  • Función VBA (VBA)

Ejemplo (como función la declaración FOR NEXT VBA en Excel)

La instrucción de la declaración FOR NEXT VBA en Excel solo se puede usar en código VBA en esta herramienta ofimática.

Veamos cómo crear un bucle FOR en Microsoft Excel, comenzando con un bucle simple, bucle doble y bucle triple, y luego exploremos cómo cambiar el valor utilizado para incrementar el contador en cada pasada por el bucle.

Bucle único con FOR NEXT VBA en Excel

La implementación más simple del bucle FOR es usar la instrucción con FOR NEXT VBA en Excel para crear un solo bucle. Esto te permitirá repetir el código VBA un número fijo de veces.

Por ejemplo:

Sub Single_Loop_Example

   Dim LCounter As Integer

   For LCounter = 1 To 5

      MsgBox (LCounter)

   Next LCounter

End Sub

En este ejemplo, el bucle FOR está controlado por la variable LCounter. Haría un ciclo 5 veces, comenzando en 1 y terminando en 5. Cada vez dentro del ciclo, mostraría un cuadro de mensaje con el valor de la variable LCounter. Este código mostraría 5 cuadros de mensaje con los siguientes valores: 1, 2, 3, 4 y 5.

Bucle único – Incremento cambiante con FOR NEXT VBA en Excel

De forma predeterminada, el bucle FOR incrementará su contador de bucle en 1, pero esto se puede personalizar. Puedes utilizar para cambiar el valor utilizado para incrementar el contador. El bucle FOR puede incrementarse y pueden ser valores positivos o negativos.STEP increment

Incremento positivo con FOR NEXT VBA en Excel

Veamos primero un ejemplo de cómo incrementar el contador de un bucle FOR en un valor positivo.

Por ejemplo:

Sub Increment_Positive_Example

   Dim LCounter As Integer

   For LCounter = 1 To 9 Step 2

      MsgBox LCounter

   Next LCounter

End Sub

En este ejemplo, se ha usado el paso 2 en el bucle FOR para cambiar el incremento a 2. Lo que esto significa es que el bucle FOR comenzaría en 1, se incrementaría en 2 y terminaría en 9. El código mostraría 5 cuadros de mensaje con los siguientes valores: 1, 3, 5, 7 y 9.

Incremento negativo con FOR NEXT VBA en Excel

Ahora, veamos cómo incrementar el contador de un bucle FOR en un valor negativo.

Por ejemplo:

Sub Increment_Negative_Example

   Dim LCounter As Integer

   For LCounter = 50 To 30 Step -5

      MsgBox LCounter

   Next LCounter

End Sub

Cuando incrementa en un valor negativo, necesitas que el número inicial sea el valor más alto y el número final sea el valor más bajo, ya que el ciclo FOR estará contando hacia atrás. Entonces, en este ejemplo, el ciclo FOR comenzará en 50, se incrementará en -5 y terminará en 30. El código mostraría 5 cuadros de mensaje con los siguientes valores: 50, 45, 40, 35 y 30.

Doble circuito con FOR NEXT VBA en Excel

A continuación, veamos un ejemplo de cómo crear un bucle FOR doble en Microsoft Excel.

Por ejemplo:

Sub Double_Loop_Example

   Dim LCounter1 As Integer

   Dim LCounter2 As Integer

   For LCounter1 = 1 To 4

      For LCounter2 = 8 To 9

         MsgBox LCounter1 & «-» & LCounter2

      Next LCounter2

   Next LCounter1

End Sub

Aquí tenemos 2 bucles FOR. El bucle FOR externo está controlado por la variable LCounter1. El bucle FOR interno está controlado por la variable LCounter2.

En este ejemplo, el ciclo FOR externo se repetirá 4 veces (comenzando en 1 y terminando en 4) y el ciclo FOR interno se repetirá 2 veces (comenzando en 8 y terminando en 9). Dentro del bucle interno, el código mostraría un cuadro de mensaje cada vez con el valor de LCounter1 – LCounter2. Entonces, en este ejemplo, se mostrarían 8 cuadros de mensaje con los siguientes valores: 1-8, 1-9, 2-8, 2-9, 3-8, 3-9, 4-8 y 4-9.

Bucle triple con FOR NEXT VBA en Excel

A continuación, veamos un ejemplo de cómo crear un ciclo FOR triple en Microsoft Excel.

Por ejemplo:

Sub Triple_Loop_Example

   Dim LCounter1 As Integer

   Dim LCounter2 As Integer

   Dim LCounter3 As Integer

   For LCounter1 = 1 To 2

      For LCounter2 = 5 To 6

         For LCounter3 = 7 To 8

            MsgBox LCounter1 & «-» & LCounter2 & «-» & LCounter3

         Next LCounter3

      Next LCounter2

   Next LCounter1

End Sub

Aquí tenemos 3 bucles FOR. El bucle FOR más externo está controlado por la variable LCounter1. El siguiente bucle FOR está controlado por la variable LCounter2. El bucle FOR más interno está controlado por la variable LCounter3

En este ejemplo, el bucle FOR más externo se haría un bucle 2 veces (comenzando en 1 y terminando en 2), el siguiente bucle FOR haría un bucle 2 veces (comenzando en 5 y terminando en 6), y el bucle FOR más interno sería bucle 2 veces (comenzando en 7 y terminando en 8).

Dentro del bucle más interno, el código mostraría un cuadro de mensaje cada vez con el valor de LCounter1 – LCounter2 – LCounter3. Este código mostraría 8 cuadros de mensaje con los siguientes valores: 1-5-7, 1-5-8, 1-6-7, 1-6-8, 2-5-7, 2-5-8, 2- 6-7 y 2-6-8.

Ejemplo 1 de FOR NEXT VBA en Excel

En el primer ejemplo, usaremos la instrucción con FOR NEXT VBA en Excel para recorrer los productos en la columna A y actualizar el tipo de aplicación apropiado en la columna B.

Sub totn_for_loop_example1 ()

   Dim LCounter como entero

   Para LCounter = 2 a 4

      Si Cells (LCounter, 1) .Value = «Excel» Entonces

         Celdas (LCounter, 2) .Value = «Hoja de cálculo»

      ElseIf Cells (LCounter, 1) .Value = «Access» Then

         Celdas (LCounter, 2) .Value = «Base de datos»

      ElseIf Cells (LCounter, 1) .Value = «Word» Then

         Celdas (LCounter, 2) .Value = «Procesador de textos»

      Terminará si

   Siguiente LCounter

End Sub

Ejemplo 2 de FOR NEXT VBA en Excel

En el segundo ejemplo, tenemos una lista de participantes en la columna A y usaremos dos bucles FOR para asignar a cada uno de los participantes al Equipo A o al Equipo B (alternando entre los dos).

Sub totn_for_loop_example2 ()

   Dim LCounter1 como entero

   Dim LCounter2 como entero

   Para LCounter1 = 2 a 9 Paso 2

      Celdas (LCounter1, 2) .Value = «Equipo A»

   Siguiente LCounter1

   Para LCounter2 = 3 a 9 Paso 2

      Celdas (LCounter2, 2) .Value = «Equipo B»

   Siguiente LCounter2

End Sub

También te puede interesar: Cómo Copiar Una Hoja Excel A Otro Libro – Tutorial

Como verás, con estos ejemplos de las declaraciones FOR NEXT VBA en Excel podrás crear bucles de manera fácil en el editor de Microsoft Visual Basic con esta función lógica. Esperamos haberte ayudado.

Deja un comentario