- •Лекция №1«Visual Basic for Application»
- •Этапы подготовки задачи к реализации на пк
- •Создание программ
- •Создание новой программы
- •Объявление процедуры
- •Инструкции
- •Правила именования объектов в vba
- •Описание функций
- •Инструкции
- •Использование операторов
- •Объявление констант
- •Оператор присваивания
- •Параметры компилятора
- •Исполняемые операторы
- •Операции в vba
- •Приоритет операций
- •Использование встроенных функций vba
- •Имя_функции([аргументы])
- •InputBox(“Вводи х”, ”Моя программа ”, 8)
- •Функции ввода-вывода Функция InputBox
- •Функция вывода. Функция Msgbox
-
Приоритет операций
Если выражение имеет несколько знаков операций, то их выполнение идет в следующем порядке:
|
( ) |
выражения в круглых скобках |
|
соs(x) |
вычисление функций |
|
^ |
возведение в степень |
|
- sin(x) |
унарный минус (смена знака) |
|
*, / |
умножение, деление |
|
\ |
целочисленное деление |
|
mod |
целочисленный остаток от деления |
|
+,– |
сложение, вычитание |
|
& |
знак конкатенации |
|
>, <= |
операции сравнения |
|
And, Or, Not |
Логические операции |
Порядок вычислений можно изменить расстановкой скобок.
-
Использование встроенных функций vba
Все функции VBA имеют один и тот же синтаксис:
Имя_функции([аргументы])
Имя функции должно подчинятся правилам именования объектов. Аргументы – это исходные данные, необходимые для работы функции. Функция всегда возвращает один единственный результат определенного типа.
Аргумент у функции может быть один, например,
Sin(3.5), IsNumeric(Str), ABS(X) или аргументов может быть несколько, например,
InputBox(“Вводи х”, ”Моя программа ”, 8)
-
Функции ввода-вывода Функция InputBox
Используется для ввода данных в программу. Имеет следующий синтаксис:
InputBox(prompt[, title] [, default] [, xpos] [, ypos] [, helpfile, context])
Отображает на рабочем листе Excel диалоговое окно с заголовком title и приглашением-подсказкой prompt и ожидает ввода данных пользователем с клавиатуры. Результат работы функции – данные, введенные пользователем.
Тип возвращаемого результата –string.
Default – необязательный параметр, в котором можно указать значение по умолчанию, возвращаемое функцией InputBox, в случае, если пользователь ничего не ввел.
xpos, ypos – необязательный параметр, координаты верхнего левого угла диалогового окна. Оба расстояния измеряются в твипах: 1 твип равен 1/20точки (точка – единица измерения типа печати). 1 точка равна 1/72 дюйма.
helpfile, context – используются для обеспечения программы контекстно-зависимой справкой.
Helpfile – строковое выражение, которое содержит имя файла помощи в операционной системе Windows
Context – числовое выражение, которое определяет тематический раздел в файле помощи.
Если вы хотите использовать аргументы helpfile, context необходимо установить компилятор Windows Help File.
Пример:
Dim x As Integer
X= CInt(InputBox(“Введите значение для х”, ”Ввод х”, 5))
Т.к. функция InputBox возвращает результат строкового типа, а переменная х – типа Integer, то в выше приведенном примере используется функция явного преобразования типа.
CInt(выражение) – преобразует выражение к типу Integer;
CDbl(выражение)– преобразует выражение к типу Double;
CLng(выражение) – преобразует выражение к типу Long;
CByte(выражение) – преобразует выражение к типу Byte
Val(выражение) преобразует строку в число, подходящего типа.
Использование этих функций желательно, но необязательно, т.к. VBA автоматически преобразует результат работы функции InputBox к типу переменной (если может). Например, если с клавиатуры введена строка, преобразовать ее к типу Byte, например, не удастся и возникнет ошибка.
! Всегда используйте функцию InputBox в составе оператора присваивания.
A = InputBox(“А =”)