Capítulo 34. Uso del Bucle For Each Next

0

 


Un bucle for en VBA para Excel le permite navegar de manera eficiente a través de una colección de elementos. Es una herramienta importante para trabajar con estructuras de datos como rangos de celdas, matrices, listas personalizadas y otros conjuntos de elementos VBA.


Estructura básica:

For Each elemento In colección

' Código que se ejecuta para cada elemento de la colección

Next elemento


Explicación:

  • For Each: Inicia el bucle.
  • Elemento: Variable que representa cada elemento de la colección en cada iteración del bucle.
  • Colección: La colección que se va a recorrer. Puede ser un rango de celdas, un array, una lista personalizada u otra estructura de datos compatible.
  • Código: Se ejecutan las instrucciones dentro del bloque de código para cada elemento de la colección.
  • Next elemento: Pasa al siguiente elemento de la colección.


Ejemplo 1:

Recorrer un rango de celdas y mostrar su contenido:


For Each celda In Range("A1:C10")

    MsgBox celda.Value

Next celda


Ejemplo 2:

Sumar los valores de un array:


Dim valores As Variant

Dim total As Double

ReDim valores(10) ' Array de 10 elementos

' Llenar el array con valores

For i = 1 To 10

    valores(i) = i * 2

Next i

' Sumar los valores del array

total = 0

For Each valor In valores

    total = total + valor

Next valor

MsgBox "La suma total del array es: " & total


Ejemplo 3:

Buscar un elemento en una lista personalizada:


Dim paises As Variant

Dim elementoBuscado As String

Dim encontrado As Boolean

' Crear una lista personalizada

ReDim paises(5)

paises(0) = "Perú"

paises(1) = "Colombia"

paises(2) = "México"

paises(3) = "Argentina"

paises(4) = "Chile"

elementoBuscado = InputBox("Ingrese el país que desea buscar: ")

encontrado = False

For Each pais In paises

    If pais = elementoBuscado Then

        encontrado = True

        MsgBox "El país " & elementoBuscado & " se encontró en la lista."

        Exit For ' Salir del bucle si se encuentra el elemento

    End If

Next pais

If Not encontrado Then

    MsgBox "El país " & elementoBuscado & " no se encontró en la lista."

End If


Recuerda:

  • El bucle For Each es ideal para recorrer colecciones de elementos de forma secuencial.
  • Puedes utilizar sentencias If y estructuras de control dentro del bucle para controlar el flujo del código según el elemento actual.
  • Es importante que la colección que se recorre no sea modificada dentro del bucle para evitar errores.
  • Puedes anidar bucles For Each para recorrer estructuras de datos anidadas.



© Todos el contenido de este curso está sujeto a derechos de propiedad por las leyes de Derechos de Autor y demás Leyes relativas Internacionales por Aprendiendo ẽXcel365 | jose alcalde alias

Entradas que pueden interesarte

Sin comentarios

Etiquetas:
#aprendiendoexcel365, #josealcaldealias, #Excel, #funciones, #UDF, #Visual Basic, #VBA, #DAX, #Tips, #Basico, #Microsoft Excel, #Cursos Excel OnLine, #Aprende Excel, #Aprende Excel OnLine, #Excel 365, #Power Pivot, #Power BI, #Power Query, #Google Sheets, #Macros, #Código VBA, #Tutoriales Excel, #MTV, #Vbscript, #TypeScript, #Lenguaje M, #fórmulas, #funciones, #paso a paso, #funciones Excel, #libros, #tablas, #formatos, #hojas, #datos, #gráfico, #análisis de datos, #base de datos, #dashboards, #tablas dinámicas, #excel desde cero, #hoja de cálculo, #plantillas de Excel