Логические операторы VBA используются для объединения результатов отдельных логических выражений, чтобы создать сложные критерии для принятия решений в процедуре (таблица Б.3).

Таблица Б.3 – Логические операторы VBA

Логический

Синтаксис

Имя/Описание

оператор

El And E2

Конъюнкция . True, если оба Е1 и Е2

имеют значение True, иначе – False

El Or E2

Дизъюнкция . True, если одно выра-

жение или оба (Е1 и Е2) являются

равными True; иначе – False

Not El

Отрицание . True, если Е1 имеет зна-

чение False; False, если El является

равным True

El Xor E2

Исключение . True, если Е1 и Е2

имеют разные значения; иначе –

El Eqv E2

Эквивалентность . True,если Е1 име-

ет то же самое значение, что и Е2;

иначе – False

El Imp E2

Импликация . False, когда Е1 является

равным True и Е2 равно False; иначе

True.

Операнды Е в этой таблице представляет собой любое допустимое выражение с результатом типа Boolean, такое как операция сравнения.

Приоритеты выполнения операций при вычислении сложных выражений

Сложное (составное) выражение (complex expression) – это любое выражение, образованное из двух или более выражений. В таблице Б.4 собраны операции по группам в порядке убывания приоритета, то есть чем ниже расположена группа, тем позже выполняются указанные в ней операции. Для изменения этого порядка применяются круглые скобки. Операции одного уровня выполняются слева направо в том порядке, в котором они записаны в выражении.

Таблица Б.4 – Приоритеты операций VBA

Оператор

Комментарии

Возведение в степень, наивысший приоритет

Унарный минус - изменение знака числа

Умножение и деление имеют равные приоритеты; они вы-

Деление нацело

Остаток от деления нацело

Сложение и вычитание имеют равный приоритет; они вы-

числяются по мере появления в выражении слева направо

Всякая конкатенация строк выполняется после любых

арифметических операций в выражении и перед любыми

операциями сравнения или логическими операциями

<, <=, >, >=,

Все операторы сравнения имеют равные приоритеты и вы-

числяются по мере появления в выражении слева направо.

Используйте круглые скобки для группирования операто-

ров сравнения в выражениях

Логические

Not And Or Xor Eqv Im p – имеют низший приоритет

операторы

Приложение В Математические функции VBA

VBA предоставляет стандартный набор математических функций приведенный в таблице В.1.

Таблица B.1 – Математические функции VBA

Возвращает / действие

Возвращает абсолютное значение N

Косинус угла N, где N – это угол, измеренный в ра-

Возвращает синус угла; N – это угол, измеренный в

радианах

Возвращает тангенс угла; N – угол в радианах

Возвращает арктангенс N как угол в радианах

Возвращает константу е, возведенную в степень N (е –

это основание натуральных логарифмов и она (при-

близительно) равна 2,718282

Возвращает целую часть N. Fix не округляет число, а

отрицательным, Fix возвращает ближайшее отрица-

тельное целое большее, чем или равное N

Возвращает целую часть N. Int не округляет число, а

отбрасывает любую дробную часть. Если N является

отрицательным, Int возвращает ближайшее отрица-

тельное целое меньшее, чем или равное N

Возвращает натуральный логарифм N

Возвращает случайное число; аргумент является не-

обязательным. Используйте функцию Rnd только

после инициализации VBA-генератора случайных чи-

сел оператором Randomize

Возвращает знак числа: –1, если N – отрицательное;

1, если N –положительное; 0, если N равно 0

Возвращает корень квадратный из N. VBA отображает

ошибку исполнения, если N – отрицательное

Операнд N означает любое численное выражение? допустимое в

Аргумент тригонометрических функции (синуса, косинуса и тангенса) задается в радианах, а не в градусах. Обратная тригонометрическая функция A t n (x ) возвращает в программу значение угла в радианах от -π/2 до π/2, тангенс которого равен значению арифметического выражения х .

Связь между радианной и градусной мерами угла выражается через иррациональное число π ≈ 3,14159265358979323846.

Радианы=

Градусы× π

Градусы=

Радианы× 180

Для перевода градусов в радианы можно также использовать встроенную функцию Excel - Application.Radians(x ), где x – угол, за-

данный в радианах.

Для получения числового значения константы π с точностью 15 цифр мантиссы можно использовать встроенную функцию Excel Application.Pi(), либо функцию VBA арктангенс

Pi= Application.Pi() либо Pi=4*Atn(1)

Примеры записи тригонометрических функций

Краткие теоретические сведения

1. Синтаксис и семантика языка программирования VBA

Синтаксис языка программирования - набор правил, описывающий комбинации символов алфавита, считающиеся правильно структурированной программой (документом) или её фрагментом.

Основные синтаксические принципы этого языка следующие:

  • VBA нечувствителен к регистру;
  • чтобы закомментировать код до конца строки, используется одинарная кавычка (") или команда REM;
  • символьные значения должны заключаться в двойные кавычки (");
  • максимальная длина любого имени в VBA (переменные, константы, процедуры) - 255 символов;
  • начало нового оператора - перевод на новую строку (точка с запятой, как в C, Java, JavaScript, для этого не используется);
  • ограничений на максимальную длину строки нет (хотя в редакторе в строке помещается только 308 символов). Несколько операторов в одной строке разделяются двоеточиями:
    MsgBox "Проверка 1" : MsgBox "Проверка 2"
  • для удобства чтения можно объединить несколько физических строк в одну логическую при помощи пробела и знака подчеркивания после него:
    MsgBox "Сообщение пользователю" _
    & vUserName

Семантика языка - это смысловое значение слов. В программировании - начальное смысловое значение операторов, основных конструкций языка и т. п.

Оператор - это наименьшая способная выполняться единица кода VBA. Оператор может объявлять или определять переменную, устанавливать параметр компилятора VBA или выполнять какое-либо действие в программе.

Арифметических операторов в VBA всего 7.

Четыре стандартных: сложение (+), вычитание (−), умножение (*), деление (/), и еще три:

  • возведение в степень (^). Например, 2^3 = 8;
  • целочисленное деление (\). Делит первое число на второе, отбрасывая (не округляя) дробную часть. Например, 5\2 = 2;
  • деление по модулю (Mod). Делит первое число на второе, возвращая только остаток от деления. Например, 5 Mod 2 = 1.

Оператор присваивания в VBA - это знак равенства. Можно записывать так:

Let nVar = 10
а можно еще проще:
nVar = 10

Здесь не путайте знак равенства с оператором равенства. Последнее выражение означает "присвоить переменной nVar значение 10", а если строка выглядит так: If (nVar = 10) , то это значит "если значение переменной nVar равно 10".

Операторов сравнения в VBA всего 8:

  • равенство (=). Например, If (nVar = 10);
  • больше, чем (>) и меньше, чем (10);
  • больше или равно (>=) и меньше или равно (= 10);
  • не равно (). Например, If (nVar10);
  • сравнение объектов (Is). Определяет, ссылаются объектные переменные на один и тот же объект или на разные. Например, If (obj1 is obj2);
  • подобие (Like). Сравнивает строковый объект с шаблоном и определяет, подходит ли шаблон.

Операторы сравнения всегда возвращают True (если утверждение истинно) или False (если утверждение ложно).

Очень часто при проверке нескольких условий используются логические операторы :

  • And - логическое И. Должны быть истинными оба условия;
  • Or - логическое ИЛИ. Должно быть истинным хотя бы одно из условий;
  • Not - логическое отрицание. Возвращает True, если условие ложно;
  • Xor - логическое исключение. В выражении E1 Xor E2 возвращает True, если только E1 = True или только E2 = True, иначе - False;
  • Eqv - эквивалентность двух выражений, возвращает True, если они имеют одинаковое значение;
  • Imp - импликация, E1 Imp E2 возвращает False, если E1 = True и E2 = False, иначе - True.

Помнить нужно про And, Or, Not , остальные логические операторы используются редко.

Переменные - это контейнеры для хранения изменяемых данных. Без них не обходится практически ни одна программа. Для простоты переменную можно сравнить с номерком в гардеробе - вы сдаете в гардероб какие-то данные, в ответ вам выдается номерок. Когда вам опять потребовались эти данные, вы "предъявляете номерок" и получаете их.

Каждая переменная имеет имя. Обращение к переменной происходит по имени. Правила выбора имен в VBA едины для многих элементов (переменные, константы, функции, процедуры и т. п.):

  • имя должно начинаться с буквы;
  • не должно содержать пробелов и символов пунктуации (исключение - символ подчеркивания);
  • максимальная длина - 255 символов;
  • должно быть уникальным в текущей области видимости
  • зарезервированные слова (те, которые подсвечиваются синим цветом в окне редактора кода) использовать нельзя.

При создании программ VBA рекомендуется определиться с правилами, по которым будут присваиваться имена объектам - соглашение об именовании. Чаще всего используется так называемое венгерское соглашение (в честь одного из программистов Microsoft, Charles Simonyi, венгра по национальности):

  • имя переменной должно начинаться с префикса, записанного строчными буквами. Префикс указывает, что именно будет храниться в этой переменной:
    str (или s) - String, символьное значение;
    fn (или f) - функция;
    sub - процедура;
    c (или все буквы имени заглавные) - константа (контейнер для хранения данных, которые, в отличие от переменных, не изменяются в ходе выполнения VBA-программы);
    b - Boolean, логическое значение (True или False);
    d - дата;
    obj (или o) - ссылка на объект;
    n - числовое значение;
  • имена функций, методов и каждое слово в составном слове должно начинаться с заглавной буквы:
    MsgBox objMyDocument.Name
    Sub CheckDateSub()

Тип данных относят к самым фундаментальным понятиям любого языка программирования. Тип данных определяет множество допустимых значений, которое может принимать величина (переменная или константа), и множество действий, которые можно выполнить с этой величиной.

2. Основные типы данных VBA

В VBA предусмотрены следующие типы данных:

  • числовые:
    Byte - целое число от 0 до 255, для хранения нужен 1 байт памяти ;
    Integer - целое число от −32 768 до 32 767, 2 байта ;
    Long - большое целое число от −2 147 483 648 до 2 147 483 647, 4 байта ;
    Currency (денежный) - большое десятичное число с 19 позициями, включая 4 позиции после запятой
    (от –922337203685477,5808 до 922337203685477,5807), 4 байта ,
    используется для хранения чисел, когда точность крайне важна, что бывает при вычислениях с денежными единицами;
    Decimal - еще большее десятичное число с 29 позициями (после запятой можно использовать от 0 до 28 позиций), 8 байт ;
    Single и Double - значения с плавающей запятой (4 и 8 байт )
    (от -3.402823·10 38 до -1.401298·10 -45 для отрицательных значений и
    от 1.401298·10 -45 до 3.402823·10 38 для положительных значений для Single, и
    от -1.79769313486232·10 308 до -4.94065645841247·10 -324 для отрицательных значений и
    от 4.94065645841247·10 -324 до 1.79769313486232·10 308 для положительных значений для Double);
  • строковые (String переменной длины (примерно до 2 млрд символов) и фиксированной длины (примерно до 65 400 символов));
  • дата и время (Date - от 01.01.100 до 31.12.9999), 8 байт ;
  • логический (Boolean - может хранить только значения True и False), 2 байта ;
  • объектный (Object - хранит ссылку на любой объект в памяти);
  • Variant - специальный тип данных, который может хранить любые типы данных, 16 байт +1
Обозначения типов данных является ключевыми словами языка (и выделяется после набора в редакторе VBA). Над различными типами данных допустимы различные операции. В VBA имеются три основных типа операций:
  • математические, выполняются над числами, их результатом являются числа;
  • операции отношения, могут применяться не только к числам, их результатом является значения логического типа;
  • логические, используются в логических выражениях и их результатом являются логические значения.

3. Приоритеты операций

Приоритет Операция
1
2
3
4
5
6
7
8
9
10
11
12
Вызов функции и скобки
^
- (смена знака)
*, /
\
Mod
+, –
>, <, >=, <=, <>, =
Not
And
Or
Xor

4. Математические функции

Функция Возвращаемое значение
Abs (<число>) Модуль (абсолютная величина) числа
Atn (<число>) Арктангенс
Cos (<число>) Косинус
Exp (<число>) Экспонента, т. е. результат возведения основания натурального логарифма в указанную степень
Log(<число>) Натуральный логарифм
Rnd (<число>) Случайное число из интервала

Если условие истинно, то выполняются операторы1, в противном случае выполняются операторы2.

Допускается также использование сложного условного оператора, который записывается в виде блока:

If условие1 Then

операторы1

ElseIf условие2 Then

операторы2

операторы3

Фамилия=.TextBox1.Text

If Фамилия =”“ Then MsgBox”Вы не ввели фамилию”

REM При установленном флажке номер 1 клиенту ‘предоставляется скидка 5%

‘ Сумма – количество денег, выплачиваемых клиентом

‘ Стоимость товара хранится в переменной Стоимость

If UserForm1.CheckBox1.Value = True Then

Сумма=Стоимость-Стоимость*0.05

Else Cумма=Стоимость

1) REM Предположим, что Тариф – это установленный тариф, а Время ‘–отработанное время. Время и тариф вводятся в поля ввода ‘соответственно вTextBox1 и TextBox2. Зарплата рассчитывается по ‘формуле Тариф*Время. Напишем программу для вывода в форму ‘рассчитанной зарплаты. Label4 – надпись, подготовленная для ‘вывода значения зарплаты

If IsNumeric(TextBox1.Text)=True And _

IsNumeric(TextBox2.Text)=True Then

Тариф=TextBox1.Text

Время=TextBox2.Text

Label4.Caption=Тариф*Время

В первом примере работа ведется с пользовательской формой номер один. Переменной Фамилия присваивается содержимое поля ввода номер один. Затем осуществляется проверка, было ли что-либо введено в поле ввода (не пуста ли переменная Фамилия ). Если переменная Фамилия пуста, то на экран выводится окно сообщения.

Во втором примере – первые строки, начинающиеся со слова REM и апострофов, – это комментарии, объясняющие назначения переменных. С помощью условного оператора определяется сумма, выплачиваемая клиентом.

В третьем примере осуществляется проверка того, введены ли в поля ввода числа. Если в два поля введены числа, то переменным присваиваются значения полей ввода и надписи присваивается значение результата умножения тарифа на время.

1) Оператор безусловного перехода GoTo предназначен для задания перехода на указанную строку внутри программы.

Синтаксис:

GoTo Строка

Обязательный аргумент Строка может быть любой меткой строки или номером строки.

If IsNumeric(TextBox1.Text)=False Then GoTo Ошибка

Ошибка: MsgBox “Ошибка при вводе чисел!”

В приведенном примере выполняется проверка того, введено ли число в поле ввода номер один. Если введено не число, то осуществляется переход на строку с меткой Ошибка и на экран выводится сообщение.

2) Оператор цикла For/To/Next предназначен для программирования повторяющихся фрагментов, т.е. для описания циклических алгоритмов.

Синтаксис:

For переменная=M1 To M2 [Step M3]

операторы

M1, M2, M3 – выражения. Оператор цикла повторяет выполнение группы операторов, пока переменная (счетчик) изменяется от начального значения М1 до конечного М2 с указанным шагом М3. Если шаг не указан, то он полагается равным 1.

Фамилия = Sheets(“Сотрудники”).Cells(I,1)

UserForm1.ComboBox1.AddItem Фамилия

В приведенном примере предполагается, что на листе «Cотрудники» в первом столбце записаны фамилии сотрудников, которые нужно внести в список поля со списком номер один пользовательской формы номер один. Алгоритм работы программы:

1) Переменной I присваивается значение 2.

2) Переменной Фамилия присваивается значение ячейки А(I,1), расположенной на листе «Сотрудники». (При первом выполнении цикла это ячейка А(2,1))

3) В список поля со списком ComboBox1 добавляется элемент из переменной Фамилия.

4) К значению переменной I добавляется 1 (если шаг не указан, то он полагается равным 1). Выполняется проверка, не превысила ли величина I 10 (конечного значения переменной I, в примере М3=10)? Если величина I еще меньше или равна 10, то выполняются пункты 2-4, в противном случае работа цикла заканчивается.

Таким образом, приведенная программа позволяет заполнить данными список поля со списком ComboBox1.

Основные алгоритмы, используемые при решении
экономических задач

Основные алгоритмы рассмотрим на следующем примере. В выполнении работы по договору участвовали сотрудники разных отделов. В таблице, на листе «Лист1» представлены данные о количестве отработанных часов каждым из сотрудников (рис.8).


Рис.8.Данные о количестве отработанных часов

сотрудниками фирмы

Основные операторы языка VBA

Комментарии (0)

3.1. Правила записи операторов

При записи операторов необходимо придерживаться следующих правил:

Каждый новый оператор записывается с новой строки.

Чтобы записать несколько операторов на одной строке, их разделяют между собой двоеточием (:).

Если оператор не помещается в одной строке, то необходимо поставить в конце строки пробел и знак подчеркивания (_), а затем продолжить не поместившуюся часть на следующей строке.

3.2. Оператор присваивания

Оператор присваивания используется, если какой-то переменной нужно присвоить новое значение. Он имеет следующий синтаксис:

ИМЯ_ПЕРЕМЕННОЙ = ВЫРАЖЕНИЕ

Сначала вычисляется выражение в правой части, а затем результат присваивается переменной, стоящей в левой части.

Например . Записать с помощью оператора присваивания следующее математическое выражение:

На VВА это выражение можно записать в виде следующего оператора:

Y = a^(1/3)+(a^2+Exp(-b))/(Sin(a)^2-Log(b))

3 .3. Операторы ввода-вывода

3 .3.1. Оператор и функция MsgBox

Оператор MsgBox осуществляет вывод информации в диалоговом окне и устанавливает режим ожидания нажатия кнопки пользователем.

Он имеет следующий синтаксис:

MsgBox Сообщение[,Кнопки][, Заголовок]

Аргументы:

Сообщение - обязательный аргумент, задающий в окне выводимое информационное сообщение. Может состоять из нескольких текстовых строк, объединенных знаком & . Использование в этом аргументе Chr(13) приводит к переходу на новую строку при выводе информации.

Кнопки - значение этого аргумента определяет категории появляющихся в окне кнопок. От значения аргумента кнопкизависит также, появляется ли в окне какой-либо значок. Если не указано, какие кнопки необходимо отображать в окне сообщений, то используется значение по умолчанию, соответствующее кнопке ОК. В табл. 3.1 приведены возможные комбинации кнопок и значков в окне сообщений.

Заголовок - задает заголовок окна.

Функция MsgBox возвращает значение типа Integer, указывающее, какая кнопка была нажата в диалоговом окне.

Таблица 3.1. Допустимые значения переменной кнопки

Отображение

Аргумент

Кнопка ОК

Кнопки ОК и Отмена

Кнопки Да и Нет

Кнопки Да, Нет и Отмена

Кнопки Прекратить, Повторить и Игнорировать

VbAbortRetryIgnore

Кнопки Повторить и Отмена.

Информационный знак

Знак вопроса

Знак восклицания

Например . Вывести сообщение о текущей дате.

MsgBox "Сегодня на календаре" & Date , "Внимание"

В результате будет выведено следующее окно (рис.3.1).

После щелчка по кнопке ОК окно сообщения закроется, и выполнение программы возобновится с оператора, стоящего непосредственно за вызовом MsgBox.

3.3.2. Функция InputBox

Функция InputBox осуществляет ввод значений переменных с помощью окна ввода и имеет следующий синтаксис:

Имя_Переменной = InputBox(Сообщение[, Заголовок ] )

Аргументы:

Сообщение - обязательный аргумент. Задает в окне информационное сообщение, обычно поясняющее смысл вводимой величины

Заголовок - задает заголовок окна.

Например , Ввести значение переменной N с клавиатуры, предусмотрев значение по умолчанию равное 10.

Для этого можно использовать следующий оператор:

N = InputBox("Введите N", "Ввод исходных данных",10)

В результате будет выведено следующее окно для ввода значения переменной N (рис.3.2).

Если значение по умолчанию подходит пользователю, то после щелчка кнопки ОК окно ввода закроется, переменной N присвоится значение 10 и выполнение программы возобновится с оператора, стоящего непосредственно за вызовом InputBox .

Если же значение по умолчанию не подходит пользователю, то перед щелчком по кнопке ОК необходимо ввести нужное значение переменной N.

3 .4. Условный оператор IF

Для реализации разветвляющегося вычислительного процесса в VBA используется оператор If…Then…Else, который представляет собой простейшую форму проверки условий. Он имеет следующий синтаксис:

If УСЛОВИЕ Then ОПЕРАТОР_1 E lse ОПЕРАТОР_2

ОПЕРАТОР_1 выполняется, если УСЛОВИЕ истинно, в противном случае выполняется ОПЕРАТОР_2 . При этом оператор If…Then…Else записывается в одну строку.

УСЛОВИЕ - это выражение логического типа. Результат выражения всегда имеет булевский тип. Выражение может быть простым и сложным. При записи простых условий могут использоваться все возможные операции отношения, указанные в табл. 3.2.

Таблица 3 .2. Логические отношения

Операция

Название

Выражение

Результат

True, если А равно В

True, если А не равно В

True, если А,больше В

True, если А меньше В

Больше или равно

True, если А больше или равно В

Меньше или равно

True, если А меньше или равно В

Сложные условия образуются из простых путем применения логических операций и круглых скобок. Список логических операций приведен в табл. 3.3.

Таблица 3 .3. Логические операции

Название

Выражение

Результат

Логическое
отрицание

Логическое И

Логическое ИЛИ

В условном операторе допустимо использование блока операторов вместо любого из операторов. В этом случае условный оператор имеет вид:

If УСЛОВИЕ Then

БЛОК_ОПЕРАТОРОВ_1

БЛОК_ОПЕРАТОРОВ_2

End I f

В условном операторе может проверяться несколько условий. В этом случае условный оператор имеет вид:

If УСЛОВИЕ_1 Then

БЛОК_ОПЕРАТОРОВ_1

ElseIf УСЛОВИЕ_2 Then

БЛОК_ОПЕРАТОРОВ_2

Else

End If

Пример 1 . Написать часть программы для алгоритма на рис. 3.3.

Пример 2. Написать часть программы для алгоритма на рис. 3.4.

3.5. Оператор выбора Select Case

Оператор Select Case удобно использовать, когда в зависимости от значения некоторого выражения, имеющего конечное множество допустимых значений, необходимо выполнить разные действия. Он также относится к условным операторам, но имеет другой вид:

Select Case ПРОВЕРЯЕМОЕ_ВЫРАЖЕНИЕ

Case ЗНАЧЕНИЯ_1

ОПЕРАТОРЫ_1

Case ЗНАЧЕНИЯ _ 2

ОПЕРАТОРЫ _ 2

. . .

Case ЗНАЧЕНИЯ_N

ОПЕРАТОРЫ _N

[ Case Else

ИНАЧЕ _ ОПЕРАТОРЫ]

End Select

ПРОВЕРЯЕМОЕ_ВЫРАЖЕНИЕ может иметь любой скалярный тип, кроме вещественного. ЗНАЧЕНИЯ состоят из произвольного количества значений или диапазонов, отделенных друг от друга запятыми.

Тип ЗНАЧЕНИЙ должен совпадать с типом ПРОВЕРЯЕМОГО_ВЫРАЖЕНИЯ .

Сначала вычисляется ПРОВЕРЯЕМОЕ_ВЫРАЖЕНИЕ . Если его значение совпадает с одним из значений ЗНАЧЕНИЯ_I , то выполнятся ОПЕРАТОРЫ_I End Select . Если его значение не совпадает ни с одним из значений ЗНАЧЕНИЯ_I , то выполнятся ИНАЧЕ_ОПЕРАТОРЫ и управление передается оператору, стоящему после End Select

Например. Написать часть программы для алгоритма на рис. 3.5, определяющего значение переменной S в зависимости от значения переменной n.

3.6. Операторы цикла

Для реализации циклического вычислительного процесса, т. е. многократного выполнения одного или нескольких операторов, служит оператор цикла For…Next , который имеет следующий синтаксис:

For СЧЕТЧИК=НАЧ_ЗНАЧЕНИЕ Т o КОН_ЗНАЧЕНИЕ Step ШАГ

БЛОК_ОПЕРАТОРОВ

БЛОК_ОПЕРАТОРОВ

Next СЧЕТЧИК

Цикл For…Next перебирает значения переменной СЧЕТЧИК , которая является параметром цикла, от начального до конечного значения с указанным шагом изменения. При этом обеспечивается выполнение блока операторов тела цикла при каждом новом значении счетчика. Если Step ШАГ в конструкции отсутствует, то по умолчанию считается, что шаг равен 1. По оператору Exit For можно выйти из оператора цикла до того, как СЧЕТЧИК достигнет последнего значения.*

Для перебора объектов из группы подобных объектов, например, ячеек из диапазона или элементов массива, удобно использовать оператор цикла For… Each…Next .

For Each Элемент In Группа

БЛОК _ ОПЕРАТОРОВ

БЛОК_ОПЕРАТОРОВ

Next Элемент

В VBA для организации циклов с неизвестным заранее числом повторений используются и другие операторы цикла:

циклы с предусловием - Do While Loop ,

Do Until Loop ;

циклы с постусловием - Do Loop While ,

Do Loop Until .

Ниже приведен синтаксис этих операторов цикла:

" Цикл с предусловием Do While Loop

Do While УСЛОВИЕ

БЛОК_ОПЕРАТОРОВ

БЛОК_ОПЕРАТОРОВ

" Цикл с предусловием Do Until Loop

Do Until УСЛОВИЕ

БЛОК_ОПЕРАТОРОВ

БЛОК_ОПЕРАТОРОВ

" Цикл с постусловием Do Loop While

БЛОК _ ОПЕРАТОРОВ

БЛОК_ОПЕРАТОРОВ

Loop While УСЛОВИЕ

" Цикл с постусловием Do Loop Until

БЛОК _ ОПЕРАТОРОВ

БЛОК_ОПЕРАТОРОВ

Loop Until УСЛОВИЕ

Оператор Do W hile…Loop обеспечивает многократное повторение блока операторов до тех пор, пока УСЛОВИЕ соблюдается, а оператор



Другие новости



Мы можем оповещать вас о новых статьях,
чтобы вы всегда были в курсе самого интересного.