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