Урок 9 по vba - цикл for next
Оператор циклу for next VBA мови використовується для виконання блоку операторів фіксовану кількість разів, найчастіше даний цикл застосовується при обробці масивів. Цикл for next є в своїй сфері найпростішим, тут задається початкове і кінцеве значення, а також, можна задати крок лічильника.

Давайте розглянемо загальний синтаксис:
Лічильник - тут ми вказуємо ім'я змінної, яка буде зберігати інформацію про кількість ітерацій (кількість виконаних походів циклу).
Початок - початкове значення лічильника, є числовим виразом
Кінець - кінцеве значення лічильника, числове вираження, яке задає кількість проходів.
Крок - необов'язковий параметр, який дозволяє задавати крок виконання. Якщо даний параметр відсутній, то збільшення лічильника при кожному проході дорівнює одиниці. Використання кроку актуально в тому випадку, якщо потрібно методом перебору вирішити рівняння, так, можна задати початкове значення 1, кінцеве 3 і крок в 0,2.
В самому кінці циклу можна і не вказувати ім'я змінної (лічильник), але це актуально, якщо використовується вкладений цикл for, це дозволить зробити код більш Новомосковскбельним.
В даному прикладі, у нас є два параметри циклу VBA. в кожному задані однакові початкові і кінцеві значення, але, в першому заданий крок 2, а в другому - 3.
У параметрі Крок можна вказати і негативне значення, в цьому випадку буде відбуватися приріст лічильника в зворотному порядку, наприклад:
Тут ми обчислюємо суму чисел від 1 до 10 при прямому і зворотному порядку.
Досить часто при використанні оператора циклу for next VBA мови може виникнути ситуація, коли при заданому умови треба припинити перебір даних, в цьому випадку використовується вираз Exit For. наприклад:
В даному прикладі використовується вкладений цикл VBA for next. У першому випадку відбувається підсумовування чисел від 1 до 100, при цьому підсумовування повторюється 100 раз. У другому випадку ми прописали умова за допомогою умовного оператора if - якщо сума більше 10 тисяч, то зробити вихід з циклу.
Добре, тепер спробуємо написати більш практичний приклад - рішення квадратного рівняння методом перебору:
В даному прикладі ми оголосили три константи a, b і с, зі значеннями -2, 6 і 20, це параметри квадратного рівняння (a * x * x + b * x + c = 0). У циклі відбувається зміна змінної х в діапазоні від -10 до 10 з кроком в 0,5. При кожній ітерації відбувається перевірка умови на рівність нулю, якщо умова виконується, в змінну res записується значення змінної x. У підсумку, рівняння буде мати два рішення: -2 і 5.
І так, в цій статті ми розглянули цикл for next мови VBA, який застосовується для обробки заданої кількості разів одних і тих же дій, в наступній статті ми розглянемо цикл for each. який використовується для обробки колекцій, там же ми розглянемо і самі колекції.