¿Cómo usar la instrucción For Next en VBA?

La instrucción For…Next en VBA se usa para crear bucles que ejecutan un bloque de código un número específico de veces. Puedes utilizarla para recorrer un rango de celdas en Excel y realizar operaciones en esas celdas.

Supongamos que deseas sumar los valores de la columna A de la hoja activa y mostrar el resultado en una celda.

VBA
Sub SumaColumnaExcel()
    Dim total As Double
    total = 0
    
    Dim ultimaFila As Integer
    ultimaFila = Cells(Rows.Count, "A").End(xlUp).Row ' Encuentra la última fila con datos en la columna A
    
    ' Suma los valores en la columna A
    For i = 1 To ultimaFila
        total = total + Cells(i, 1).Value ' Suma el valor de cada celda en la columna A
    Next i
    
    ' Muestra el resultado en una celda
    Range("C1").Value = "La suma es:"
    Range("D1").Value = total
End Sub

Este código comienza declarando una variable total para almacenar la suma. Luego, utiliza la función Cells(Rows.Count, «A»).End(xlUp).Row para encontrar la última fila con datos en la columna A. Después, ejecuta un bucle For…Next desde la fila 1 hasta la última fila, sumando el valor de cada celda en la columna A a la variable total. Finalmente, muestra el resultado en las celdas C1 y D1.

También puedes usar For…Next si tienes una hoja de Excel con cinco celdas (A1 a A5) y quieres escribir los números del 1 al 5 en esas celdas utilizando un bucle For…Next en VBA

VBA
Sub EscribirNumerosEnCeldas()
    Dim i As Integer
    
    For i = 1 To 5
        Cells(i, 1).Value = i ' Escribe el número actual en la celda correspondiente de la columna A
    Next i
End Sub

En este caso:

Dim i As Integer: Declara una variable i como un número entero que actuará como contador del bucle.
For i = 1 To 5: Establece el inicio (1) y el final (5) del bucle. El bucle se ejecutará cinco veces, desde 1 hasta 5.
Cells(i, 1).Value = i: Escribe el valor de i en la celda de la columna A correspondiente a la fila actual del bucle. En la primera iteración, escribe 1 en la celda A1, en la segunda iteración escribe 2 en la celda A2, y así sucesivamente hasta llegar a 5 en la celda A5.
Al ejecutar este código, verás que los números del 1 al 5 se escriben en las celdas de la columna A (A1 a A5) de tu hoja de Excel.

Conoce nuestra tienda

Ver más productos

Mejora tu nivel y logra tus objetivo

Excel

Excel cursos

Access

cursos de Access

Power BI

cursos power BI

Ayúdanos a hacer crecer el proyecto