x = Val(InputBox("ВВести", "ЧИСЛО"))
Результатом работы будет диалоговое окно, размещённое в середине экрана вида:
В позицию курсора необходимо ввести число, которое будет занесено в переменную х.
Функция MsgBox отображает сообщения в диалоговое окно.
Синтаксис функции MsgBox:
MsgBox(Сообщение [, Кнопки] [,Заголовок] [,Файл справки. Номер темы])
o сообщение - обязательный аргумент, строковое выражение, содержащее текст сообщения;
o кнопки - необязательный аргумент, равный одному из значений предопределённого перечисляемого списка, таких как
1. VbOKOnly -создаёт кнопку OK.
2. VbOKCancel - создаёт кнопки ОТМЕНА и OK.
3. VbAbortRetryIgnore - создаёт кнопки СТОП, ПОВТОР, ПРОПУСТИТЬ
4. VbYesNoCancel - создаёт кнопки ДА, НЕТ, ОТМЕНА
5. VbYesNo- создаёт кнопки ДА, НЕТ
6. RetryCancel - создаёт кнопки ПОВТОР, ОТМЕНА
o заголовок - необязательный аргумент, строковое выражение, выводимое в строке заголовка диалога;
o файл_справки - необязательный аргумент, строковое выражение, идентифицирующее связанный файл справки;
o номер темы - необязательный аргумент, числовое выражение, задающее номер темы (два последних аргумента должны присутствовать одновременно).
Пример
Вывести на экран сообщение “Наш институт” и создать две кнопки: ДА и НЕТ.
MsgBox("Наш институт", vbYesNo, "Вывод")
7. Управляющие структуры
VBA обрабатывает каждый оператор последовательно, если обнаруживает оператор End, то процедура завершается.
Такой принцип называется последовательным выполнением.
В VBA имеется ряд операторов, с помощью которых можно изменить порядок выполнения: можно выполнять операторы в другом порядке, вообще обойти группу операторов или повторить группу операторов несколько раз.
Операторы управления, применяемые для изменения порядка выполнения, называются управляющими структурами. Они делятся на две группы:
1.Структуры ветвления служат для проверки условий и выполнения различных групп операторов в зависимости от результатов проверки.
2. Циклы служат для многократного выполнения группы операторов.
Структура If … Then
Однострочный синтаксис структуры:
If условие Then операторы
Если условие равно True (Истина), то VBA выполняет оператор, указанные в строке и переходит к следующей строке процедуры.
Если условие равно False, операторы, указанные в строке не выполняются, происходит переход к следующей строке процедуры.
Многострочный (блочный) синтаксис структуры:
If условие Then
Операторы
End If
Если условие равно True (Истина), то VBA выполняет операторы и доходит до оператора End If. которым заканчивается управляющая структура.
Если условие равно False, операторы не выполняются, происходит переход к End If, а затем к следующей строке процедуры.
Начало структуры
ветвления
If
Условие True Then
Операторы
False
Конец структуры ветвления
Однострочный синтаксис можно применять для нескольких операторов, но при этом их необходимо разделять двоеточиями (:).
Структура If … Then … Else
Однострочный синтаксис структуры:
If условие Then операторы [Else вторая группа операторов]
Если условие равно True (Истина), то VBA выполняет операторы, указанные после Then, в противном случае – группа операторов после
Else. После обработки любой группы операторов происходит переход к следующей строке процедуры. Можно составлять группы из нескольких операторов через двоеточия, но всё должно быть записано в одной строке.
Многострочный (блочный) синтаксис структуры:
If условие Then
Первая группа операторов
[Else
Вторая группа операторов]
End If
Этот же синтаксис можно применять, когда есть несколько условий и несколько блоков операторов.
If условие1 Then
Блок операторов
[ElseIf условие2 Then
Второй блок операторов]
…
[Else n-й блок операторов]
End If
Если первое условие равно True (Истина), то VBA выполняет первый блок операторов и затем переходит к следующему после оператора End If. пропуская все остальные блоки.
Если первое условие равно False, то проверяется следующее условие в операторе ElseIf.
Если это условие истинно, то выполняется соответствующий блок операторов и выходит из структуры ветвления. Если оно ложно, то проверяется следующее условие и т.д.
Если встречается условие, значение которого истинно, то выполняется соответствующий блок операторов и выходит из структуры ветвления.
Если же ни одно из условий не равно True, то VBA может выполнить блок после Else и выйти из структуры.
Начало структуры
ветвления
If
Условие True Then
Операторы
False
Else
операторы
Конец структуры ветвления
Пример
Вычислить значение функции у(х) при заданном х:
ì 1+x, если х<0
Y= í 1/x,если 0£x£5
î 5,если x>7