Next
Управляющая инструкция For-Next
End Sub
End Select
Здесь для выполнения фрагмента кода значение определяющего выражения должно попадать в определенный интервал, границы которого, разделенные словом То, указаны после ключевого слова Case.
Встроенная функция Chr принимает один аргумент — число от 0 до 255 — и возвращает соответствующий символ ASCII. Chr(13) возвращает символ перевода строки, который в информационном окне приводит к переносу текста сообщения на новую строку.
Она позволяет выполнять несколько команд заданное число раз. Рассмотрим следующий пример: в нем число, записанное в переменную Base, возводится в степень, содержащуюся в переменной Power.
Sub ForNext()
Dim Base As Integer
Dim Power As Integer
Dim Result As Integer
Dim Count1 As Integer
Base = 4
Power = 5
Result =1
For Count = 1 To Power Step 1
Result = Result * Base
MsgBox Base & " в степени " & Power & " = " & Result
В этой программе с помощью цикла For-Next 4 возводится в пятую степень. Надо отметить, что в VBA есть оператор возведения в степень ^, поэтому для подобного расчета достаточно написать
|
|
Num2 = 4 ^ 5
Мы решили использовать цикл For-Next для возведения в степень исключительно в учебных целях. В программе ForNext для вычислений используются четыре целые временные: Base, равная 4, Power, равная 5, Result, предназначенная для хранения результата, и Countl — счетчик цикла. Рассмотрим отдельные элементы инструкции For-Next.
For | Ключевое слово, отмечающее начало инструкции For-Next |
Count = 1 То Power | Выражение, определяющее счетчик и его начальное и конечное значения, задающие число повторений цикла. В данном случае в качестве счетчика используется переменная Count. Ключевое слово То разделяет начальное (1) и конечное (Power) значения счетчика. При первом обращении к циклу переменной Count присваивается значение 1, и начинается выполнение цикла |
Step1 | Ключевое слово, задающее шаг приращения счетчика при завершении очередного цикла. Чаще всего в циклах For-Next он равен 1, но может быть любым целым числом, в том числе и отрицательным (тогда значение счетчика в каждом цикле уменьшается). В начале очередного цикла значение счетчика сравнивается с его конечным значением. Если разница положительная (значение счетчика превосходит его конечное значение), управление передается инструкции, заданной после ключевого слова Next. To же самое происходит и при отрицательной разнице. Указание ключевого слова Step и величины шага не является обязательным. Если они не определены, VBA выполняет цикл с шагом 1. |
Result = Result * Base | Тело цикла. Может состоять из нескольких инструкций |
Next | Ключевое слово, отмечающее конец инструкции For-Next. При достижении ключевого слова Next значение счетчика увеличивается на величину шага, после чего управление передается на начало цикла. Затем происходит сравнение счетчика с конечным значением, и цикл при необходимости повторяется снова |