Aplicación
Contenido
Índice 🔎︎

# Instrucción Do… Loop

Repite las instrucciones que haya entre Do y Loop mientras la condición sea cierta o hasta que la condición resulte ser cierta.

## Sintaxis

    Do [{While | Until} condición = cierta]

bloque de instrucciones

    [Exit Do]

bloque de instrucciones

    Loop

o

    Do

bloque de instrucciones

    [Exit Do]

bloque de instrucciones

    Loop [{While | Until} condición = cierta]

## Parámetros/Elementos

Condición: Una comparación, expresión numérica o de cadena, que se evalúa como cierta o falsa.

Bloque de instrucciones: Instrucciones que se desee repetir mientras o hasta que la condición resulte ser cierta.

La instrucción Do...Loop ejecuta un bucle mientras o hasta que una condición concreta sea cierta. La condición para salir del bucle debe introducirse siguiendo las intrucciones de Do o Loop. Los ejemplos siguientes son combinaciones válidas:

## Sintaxis

    Do While condición = cierta

...bloque de instrucciones

    Loop

El bloque de instrucciones situado entre Do While y Loop se repite mientras la condición siga siendo cierta.

    Do Until condición = cierta

...bloque de instrucciones

    Loop

El bloque de instrucciones situado entre Do Until y Loop se repite mientras la condición sea falsa.

    Do

...bloque de instrucciones

    Loop While condición = cierta

El bloque de instrucciones situado entre Do y Loop se repite mientras la condición siga siendo cierta.

    Do

...bloque de instrucciones

    Loop Until condición = cierta

El bloque de instrucciones situado entre Do y Loop se repite hasta que la condición sea cierta.

La instrucción Exit Do se utiliza para finalizar el bucle incondicionalmente. Esta instrucción se puede añadir en cualquier parte de una estructura Do...Loop. También se puede definir una condición de salida utilizando la estructura If...Then de la manera siguiente:

    Do...

instrucciones

    If condición = cierta Then Exit Do

instrucciones

    Loop...

## Ejemplo

    Sub ExampleDoLoop

    Dim sFile As String

    Dim sPath As String

        sPath = "c:\"

        sFile = Dir$( sPath ,22)

        If sFile <> "" Then

            Do

                MsgBox sFile

                sFile = Dir$

            Loop Until sFile = ""

        End If

    End Sub