Главная страница

Лекции VBA. Можно выделить следующие разновидности макросов


Скачать 314.53 Kb.
НазваниеМожно выделить следующие разновидности макросов
Дата29.10.2022
Размер314.53 Kb.
Формат файлаdocx
Имя файлаЛекции VBA.docx
ТипПрограмма
#760802
страница9 из 22
1   ...   5   6   7   8   9   10   11   12   ...   22

Пример краткой формы оператора if:


If a<0 Then

a=-a End If

Полная форма оператора if используется в тех случаях, когда имеются два

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

Пример полной формы оператора if:


If x=0 Then x=1

Else

z=y/x End If

Для того чтобы текст вашей процедуры был понятным и удобным для

восприятия, рекомендуется делать отступы для групп операторов так, как это указано при описании их синтаксиса. В VBA предусмотрено удобное средство изменения отступов — нажатие на клавишу <Таb> увеличивает отступ вправо, нажатие комбинации клавиш + уменьшает этот отступ.

Использование оператора if делает функции, позволяющие избежать некоторых ошибок. Например, использование функции ИНИЦИАЛЫ предполагает, что исходная строка обязательно содержит фамилию, имя и отчество. А если отчество отсутствует, то возникнет ошибка. Поэтому в коде программы надо проверить значение переменной n2_pr – положение второго пробела. Если эта переменная равна нулю, то отчество в строке отсутствует. Функция будет иметь вид:


Ветвления. Сложные условия


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

not

Операция отрицания

And

Логическое «и»

Or

Логическое «или»

Если два условия соединены логическим «и» (and), то условие выполняется если оба условия выполняются одновременно.

Пример: a>6 and a<20 – условие выполняется если a находится в интервале от 6 до 20 (например a = 10).

Если условия соединены логическим «или» (or), то условие выполняется, если выполняется хотя бы одно условие.

Пример: x<0 or b>10 – если х отрицательный, то независимо от того, чему равен b, условие выполняется.

Логические операции, как и арифметические имеют приоритет. Высший приоритет у операции not, следующий приоритет имеет операция and и самый низкий приоритет у операции or.

Использование сложных условий повышает наглядность операции и сокращает количество операторов If.

Оператор выбора


Если выбор одной из нескольких возможностей все время основан на различных значениях одного и того же выражения, гораздо удобнее использовать специально предназначенный для этого оператор выбора select case, имеющий следующий синтаксис:

Select Case <проверяемоеВыражение>

Case <списокЗначений1>

<блокОператоров1>

Case <списокЗначений2>

<блокОператоров2>

Case <списокЗначений3>

<блокОператоров3>

Case Else

<блокОператоров_Еlsе>

End Select

Проверяемое выражение вычисляется в начале работы оператора select Case. Это выражение может возвращать значение любого типа, например, логическое, числовое или строковое.

Список выражений представляет собой одно или несколько выражений, разделенных запятой. При выполнении оператора проверяется, соответствует ли хотя бы один из элементов этого списка проверяемому выражению. Эти элементы списка выражений могут иметь одну из следующих форм:

  • <выражение>

в этом случае проверяется, совпадает ли значение проверяемого выражения с этим выражением;

  • <выражение1> То <выражение2>

в этом случае проверяется, находится ли значение проверяемого выражения в указанном диапазоне значений;

  • Is <логическаяОперация> <выражение>

в этом случае проверяемое выражение сравнивается с указанным значением с помощью заданной логической операции, например, условие Is

>= 10 считается выполненным, если проверяемое значение не меньше 10.

Если хотя бы один из элементов списка соответствует проверяемому выражению, то выполняется соответствующая группа операторов, и на этом выполнение оператора select case заканчивается, а остальные списки выражений не проверяются, т. е. отыскивается только первый подходящий элемент списков выражений. Если же ни один из элементов всех этих списков не соответствует значению проверяемого выражения, выполняются операторы группы Else, если таковая присутствует.
1   ...   5   6   7   8   9   10   11   12   ...   22


написать администратору сайта