Excel VBA: процедура циклов объяснена.

Циклы Excel VBA

Циклы являются одним из самых основных и мощных инструментов программирования в VBA и используются в большинстве языков программирования. Циклы используются для повторения блока кода столько раз, сколько требуется, до тех пор, пока данное условие не останется верным или не будет достигнута определенная точка (или значение), после чего выполняется следующий раздел кода. Цикл позволяет вам написать несколько простых строк кода и получить гораздо более значительный вывод, просто повторяя.
  • Для петли
    • Для ... Следующие заявления
    • Для каждого ... Следующие заявления
  • Делать во время цикла
    • Делай пока ...
    • Do ... Loop Пока заявления
  • Делать до цикла
    • Делай пока ...
    • Делать ... цикл до заявлений

Существует три основных типа циклов VBA (разделенных на 6 циклов, как показано ниже):

Для петли

Для ... Следующие заявления

повторяет блок кода определенное количество раз.

В следующем примере MsgBox будет показан 5 раз и отобразится число.

 Sub F_Next_loop () Dim i As Integer For i = от 1 до 5 MsgBox i Next i End Sub 

Для каждого ... Следующие заявления

Цикл For Each ... Next повторяет блок кода для каждого объекта в группе. Повторяет выполнение блока кода для каждого элемента коллекции. Цикл останавливается, когда все элементы в коллекции покрыты, и выполнение перемещается в раздел кода, следующий сразу за оператором Next.

 Sub F_each_loop () Затемнять ячейку как диапазон для каждой ячейки в ActiveSheet.Range ("A1: A10") Cell.Interior.Color = RGB (160, 251, 142) Sub Sub End Sub 

 Оператор Exit For немедленно остановит выполнение существующего цикла и выполнит раздел кода, следующий сразу за оператором Next, 

Делать во время цикла

повторяет блок кода бесконечно, пока указанное условие продолжает выполняться и оценивается как True, и останавливается, когда условие становится False. Условие может быть проверено либо в начале, либо в конце цикла.

Делай пока ...

проверить состояние в начале,

 Sub do_While () Dim i As Integer i = 1 Do Пока ячейки (i, 1). Значение "" MsgBox ii = i + 1 Loop MsgBox i End Sub 

Do ... Loop Пока заявления

проверить состояние в конце цикла

 Sub do_While () Dim i As Integer i = 1 Do MsgBox ii = i + 1 Цикл в то время как ячейки (i, 1). Значение "" MsgBox i End Sub 

 Оператор Exit Do немедленно остановит выполнение существующего цикла и выполнит раздел кода, следующий сразу за оператором Next, 

Делать до цикла

повторяет блок кода бесконечно, пока условие не будет выполнено, и оценивается как True. Условие может быть проверено либо в начале, либо в конце цикла.

Делай пока ...

проверить состояние в начале,

 Sub do_Until () Dim i As Integer i = 1 Do, пока Not IsEmpty (Cells (i, 1)) Cells (i, 1) .Interior.Color = RGB (255, 0, 0) i = i + 1 Loop End Sub 

Делать ... цикл до заявлений

проверить состояние в конце цикла.

 Sub do_Until () Dim i As Integer i = 1 Do Cells (i, 1) .Interior.Color = RGB (255, 0, 0) i = i + 1 цикл, пока Not IsEmpty (Cells (i, 1)) End Sub 
Предыдущая статья Следующая статья

Лучшие советы