Excel VBA Робіть цикл

Зробити "Цикл" означає зробити щось, тоді як умова - ІСТИНА. Це як логічна функція, яка працює на основі ІСТИНА або ЛЖА. Отже, якщо умова є ПРАВИЛЬНОЮ, вона продовжуватиме виконувати оператор всередині циклу, але якщо умова FALSE негайно, вона вийде з оператора Do while. Робота VBA Do while Loop показана на малюнку, наведеному нижче.

Синтаксис Do while Loop у VBA Excel

У той час як Loop має два види синтаксису в Excel VBA.

Обидва вони дуже схожі, і в них є одна проста диференціація.

У першому синтаксисі цикл "Зробити поки" спочатку перевіряє умову та дає результат умови як ПРАВИЛЬНИЙ чи ЛЖИЙ Якщо умова є ПРАВИЛЬНОЮ, вона виконає код і виконає задане завдання, а якщо умова - ЛІЖНЕ, то він вийде з циклу.

У другому синтаксисі цикл "Do" спочатку виконує код, а потім перевіряє, чи умова є ПРАВИЛЬНОЮ або ЛІЖНОЮ. Якщо умова - ПРАВИЛЬНА, вона знову повернеться та виконає те саме завдання. Якщо умова ФАЛЬСЕ, то вона негайно вийде з циклу.

Приклад Excel VBA Do while Loop

Якщо ви нічого не зрозуміли в теорії, нічого не турбуйтеся. Я поясню вам простий набір прикладів, щоб мати справедливі знання про цю петлю.

Ви можете завантажити шаблон VBA Do while Loop Excel тут - VBA Do while Loop Excel Шаблон

Тепер ми виконаємо завдання вставити перші 10 порядкових номерів з комірки А1 в А10. Виконайте наведені нижче дії, щоб застосувати цикл "Зробити поки".

Крок 1:

Спершу створіть ім’я макросу

Код:

 Sub Do_While_Loop_Example1 () Кінець Sub 

Крок 2:

Визначте змінну як "Довга". Я визначив "k" як довгий тип даних.

Код:

 Sub Do_While_Loop_Example1 () Dim k As Long End Sub 

Крок 3:

Тепер введіть слово "Робіть поки". І після запуску імені циклу введіть умову як "k <= 10".

Код:

 Sub Do_While_Loop_Example1 () Dim k As Long Do while k <= 10 End Sub 

Крок 4:

Тепер за допомогою властивості CELLS можна вставити порядкові номери.

Код:

 Sub Do_While_Loop_Example1 () Dim k As Long Do Хоча k <= 10 комірок (k, 1) .Value = k Кінець Sub 

Примітка: Тут змінна "k" починається з 1, тому спочатку k значення дорівнює 1. Де б "k" було рівним 1.

Крок 5:

Тепер закрийте цикл, ввівши слово "LOOP".

Код:

 Sub Do_While_Loop_Example1 () Dim k As Long Do while k <= 10 комірок (k, 1) .Value = k Кінець циклу Sub 

Гаразд, ми зробили. Для кращого розуміння давайте перевірити цей код один за одним, натиснувши клавішу F8 один раз.

Спочатку натисніть клавішу F8, вона виділить ім'я макросу жовтим кольором.

Тепер ще один раз натисніть клавішу F8, вона перейде до "Доки цикл". Поставте курсор на "k" і подивіться, яке значення.

Отже, K = 0. Причина, чому "k" дорівнює нулю, тому що цикл тут не починається виконувати. Натисніть F8 ще раз і подивіться, яке значення.

І все-таки значення "k" дорівнює нулю. Гаразд, давайте зробимо одну справу зараз, припиніть запуск макросу і призначте значення "k" як 1 до початку циклу.

Тепер всередині циклу перезначте значення k як k = k +1.

Тепер почніть процес виконання кодового рядка за рядком натисканням клавіші F8. Почніть натискання клавіші F8 і подивіться, яке значення має при виконанні циклу "Do while".

Код:

 Sub Do_While_Loop_Example1 () 

Дім k Як довгий

k = 1

Зробіть, поки k <= 10
Клітини (k, 1) .Value = k
k = k + 1

Петля

Кінець Під

Отже значення "k" дорівнює 1. Де б не було "k", воно дорівнює значенню 1. Отже, рядок коду Cells (k, 1). Значення = k дорівнює:

Клітини (1, 1). Значення = 1, тобто значення рядка 1 та стовпця 1 (клітинка А1) дорівнює 1.

Натисніть клавішу F8 і виконайте дії всередині циклу.

Тепер подивіться на значення в комірці A1.

Таким чином ми отримали значення 1 у комірці A1.

Тепер виконайте наступний рядок, натиснувши клавішу F8, і подивіться, яке значення "k".

Тож тепер k значення дорівнює 2. Отже, де k є, дорівнює 2.

Натисніть клавішу F8, тепер код повернеться до перевірки значення k.

Тепер натисніть ще два рази клавішу F8 і подивіться, яке значення знаходиться в комірці A2.

Як це зробити Do while Loop продовжує виконувати завдання вставки послідовних номерів, поки значення k не досягне 11. Тепер я вже виконував рядок за рядком, поки значення k не стане 10.

Тепер, якщо я ще раз натискаю клавішу F8, вона повернеться до перевірки стану, але не виконає рядок коду, оскільки значення k зараз перевищує 10.

Якщо я натискаю клавішу F8, вона відразу вийде з циклу і перейде до кінця Sub.

Кінцевий вихід подається наступним чином.

Як і цей цикл VBA Do while Loop можна використовувати для виконання одного і того ж набору завдань, поки задана умова не стане ІСТИНА.

Що потрібно пам’ятати

  • VBA Do while Loop виконує завдання, поки умова не стане TRUE.
  • Ми також можемо перевірити стан на початку циклу або також в кінці циклу.
  • Умова переміщення є ЛІЖНИМ, вона вийде з циклу і не виконає завдання.

Рекомендовані статті

Це було керівництвом до VBA Do while Loop. Тут ми обговорили, як використовувати Excel VBA Do while Loop разом з деякими практичними прикладами та шаблоном Excel, який можна завантажити. Ви також можете ознайомитися з іншими запропонованими нами статтями -

  1. Як використовувати функцію FIND в Excel?
  2. Методи використання функції VBA в Excel
  3. Способи використання функції VBA в Excel
  4. Як використовувати функцію VBA VLOOKUP?

Категорія: