¿Cómo usar la instrucción While…Wend en VBA?

En VBA (Visual Basic for Applications), la instrucción `While…Wend` se utiliza para crear un bucle que se ejecutará continuamente mientras una condición especificada sea verdadera. El bucle dejará de ejecutarse una vez que la condición ya no sea verdadera.

Aquí se muestra la sintaxis básica de cómo usar `While…Wend`:

While condition
    ' Código a ejecutar mientras la condición sea verdadera
Wend
  • `condition`: Es una expresión que se evalúa cada vez que se inicia el bucle o se regresa al principio del bucle. Si la condición es verdadera, el bucle continúa ejecutándose. Si la condición es falsa, la ejecución del código se sale del bucle y continúa con cualquier instrucción que siga después del `Wend`.

Aquí tienes un ejemplo práctico de cómo usar `While…Wend` en VBA:

Sub EjemploWhileWend()
    Dim contador As Integer
    contador = 0
    
    ' Bucle que se ejecuta mientras contador sea menor que 5
    While contador < 5
        ' Incrementar el contador en 1
        contador = contador + 1
        
        ' Mostrar el valor actual del contador
        MsgBox "El valor del contador es: " & contador
    Wend
    
    ' Mostrar un mensaje al finalizar el bucle
    MsgBox "El bucle ha terminado porque contador es igual o mayor que 5."
End Sub

En este ejemplo, el bucle se ejecutará mientras el `contador` sea menor que 5. Dentro del bucle, el contador se incrementa en 1 en cada iteración y se muestra su valor actual. Una vez el `contador` alcanza el valor de 5, la condición `contador < 5` se vuelve falsa y el bucle se detiene.

Es importante mencionar que `While…Wend` ha quedado algo obsoleto y es recomendable utilizar `Do…Loop` en su lugar para tener más opciones de control, como `Do While…Loop`, `Do…Loop While`, `Do Until…Loop`, y `Do…Loop Until`.

Aquí te dejo un ejemplo equivalente usando `Do While`:

Sub EjemploDoWhile()
    Dim contador As Integer
    contador = 0
    
    ' Bucle que se ejecuta mientras contador sea menor que 5
    Do While contador < 5
        ' Incrementar el contador en 1
        contador = contador + 1
        
        ' Mostrar el valor actual del contador
        MsgBox "El valor del contador es: " & contador
    Loop
    
    ' Mostrar un mensaje al finalizar el bucle
    MsgBox "El bucle ha terminado porque contador es igual o mayor que 5."
End Sub

La elección entre `While…Wend` y `Do…Loop` suele depender del contexto o del hábito del programador, pero en general se recomienda `Do…Loop` por su mayor flexibilidad y legibilidad.

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

Deja un comentario