¿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:

VBA

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:

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:

VBA

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

¡Únete a nuestro Grupo de Facebook!

Deja un comentario