Цикл VBA Do Until: примеры и фрагменты кода

  1. Базовый пример:

    Dim i As Integer
    i = 1
    Do Until i > 5
    Debug.Print i
    i = i + 1
    Loop

    Выход:

    1
    2
    3
    4
    5

    Пояснение: В этом примере цикл продолжит выполнение блока кода до тех пор, пока значение iне превысит 5.

  2. Цикл с пользовательским вводом:

    Dim userInput As String
    Do Until userInput = "quit"
    userInput = InputBox("Enter a value (type 'quit' to exit):")
    Debug.Print "You entered: " & userInput
    Loop

    Объяснение: Этот код предлагает пользователю вводить значение несколько раз, пока он не введет «выход». Цикл будет продолжаться до тех пор, пока не будет выполнено указанное условие.

  3. Цикл с условием выхода:

    Dim i As Integer
    i = 1
    Do Until False
    Debug.Print i
    i = i + 1
    If i > 5 Then Exit Do
    Loop

    Выход:

    1
    2
    3
    4
    5

    Объяснение: В этом примере условие цикла установлено в False, но цикл завершается преждевременно с помощью оператора Exit Do, когда i>превышает 5.

  4. Цикл с элементами массива проверки состояния:

    Dim numbers(1 To 5) As Integer
    numbers(1) = 10
    numbers(2) = 20
    numbers(3) = 30
    numbers(4) = 40
    numbers(5) = 50
    Dim i As Integer
    i = 1
    Do Until numbers(i) > 40
    Debug.Print numbers(i)
    i = i + 1
    Loop

    Выход:

    10
    20
    30

    Объяснение: В этом примере цикл продолжается до тех пор, пока не встретится элемент массива со значением больше 40.