- •Свойства размещения и размера элемента:
- •Текстовое поле - TextBox
- •Кнопка Command Button. Свойства:
- •Понятие программного кода
- •Окно программного кода
- •Процедуры
- •Структура процедуры
- •Создание процедуры
- •Вызов процедур на исполнение
- •Практическое задание №1
- •Типы данных, которыми оперирует vba
- •Переменные
- •Объявление переменных
- •Массивы
- •Пользовательские типы данных
- •Операторы присваивания
- •Комментарии
- •Операции vba
- •Математические функции vba
- •Строковые функции
- •Функции даты и времени
- •Преобразование типов данных
- •Создание и применение процедур и функций.
- •Передача процедуре величин
- •Использование списка поименованных аргументов
- •Создание и применение функций
- •Операторы тела функции
- •Управление выполненем программы
- •Логические функции
- •If Выражение_1 Then
- •If Выражение_2 Then
- •If Выражение_3 Then
Математические функции vba
Операции позволяют выполнять только простейшие математические действия. Для более сложных вычислений используются встроенные математические функции VBA.
Функция |
Выполняемое действие |
Atn |
Возвращение арктангенса угла в радианах |
Sin |
Возвращение синуса угла в радианах |
Cos |
Возвращение косинуса угла в радианах |
Tan |
Возвращение тангенса угла в радианах |
Exp |
Возвращение значения ex, где x - значение переменной или введенное число |
Log |
Возвращение натурального логарифма числа |
Sqr |
Возвращение квадратного корень числа |
Randomize |
Инициирование генератора случайных чисел |
Rnd |
Возвращение случайного числа |
Abs |
Возвращение абсолютного значения числа (по модулю) |
Sgn |
Возвращение знака числа (+ или -) |
Fix |
Возвращение округленного значения числа отсечением дробной части |
Int |
Возвращение округленного значения числа до ближайшего целого |
Математические функции VBA используются для обработки отдельных чисел и не могут применяться к массивам чисел. Если в этом есть необходимость, то нужно обрабатывать каждый элемент массива в отдельности.
При вызове встроенной функции следует указать в круглых скобках ее аргумент. Исключение составляет функция Randomize, которая включает генератор случайных чисел и не имеет аргумента.
ПРИМЕРЫ: 1.
X = 9
Y = SQR(X)
Переменная Y получит значение
2. Fi = 3.09 Z = Sin(Fi) Переменная Z получит значение Z = 0.05157
3. Если есть необходимость ввода аргумента тригонометрических функций не в радианах, а в градусах, то его следует преобразовать следующим образом Fi = 30° Pi = 3.14 Z = Sin(Fi*Pi/180) Здесь Pi - число p , введенное с требуемой степенью точности.
A = Exp(-0.5) Переменная A получит значение 0.6065, где е = 2.71828 - основание натурального логарифма.
5. Пусть необходимо вычислить значение X = lg2(A). Для этого можно использовать встроенную функцию VBA - Log, произведя следующее преобразование
X = LOG(А)/LOG(2),
6. Для того, чтобы получить случайным образом число из заданного диапазона с помощью функции Rnd, обязательно необходимо предварительно включить генератор случайных чисел, т.е. вызвать функцию Randomize
Например, в ходе жеребьевки участнику соревнований нужно вытянуть один номер из ста. Минимально возможный номер Min = 1, максимально возможный - Max = 100. Задача реализуется следующим образом
Randomize
X=Int ((Max*Rnd)+ Min)
Строковые функции
Строковые функции позволяют эффективно производить поиск и обработку текстовой информации. Основными строковыми функциями VBA являются
Функция |
Назначение |
StrComp(Строка1,Строка2) |
Сравнивает две строки |
Lcase(Строка) |
Преобразует строку в нижний регистр |
Ucase(Строка) |
Преобразует строку в верхний регистр |
Space(Число) |
Создает строку пробелов, в соответствии с заданным количеством |
String(Число, “Cимвол”) |
Создает строку символов, в соответствии с заданным количеством |
Len(Строка) |
Вычисляет длину строки по количеству символов |
Instr(Строка, Подстрока) |
Ищет подстроку в строке |
Lset |
Выравнивает строку по левому краю |
Rset |
Выравнивает строку по правому краю |
Left(Строка, Число) |
Выделение левой части строки. Количество символов отсчитывается слева |
Right(Строка, Число) |
Выделение правой части строки. Количество символов отсчитывается справа |
Mid(Строка, Число,Число) |
Выделяет и перемещает строку |
Ltrim(Строка) |
Удаляет пробелы в начале строки |
Rtrim(Строка) |
Удаляет пробелы в конце строки |
Trim(Строка) |
Удаляет пробелы и вначале, и в конце строки |
Str(Число) |
Преобразует число в строку |
Val(Строка) |
Преобразует строку в число |
Format(Число, Шаблон) |
Преобразует число в строку по заданному формату |
Функция StrComp() сравнивает две строки и выдает результат сравнения в виде чисел:
(-1), если первая строка оказалась больше 1, если вторая строка оказалась больше Сравнение двух строк может производиться двумя методами: двоичным и символьным. Двоичное подразумевает: б > a; в > б и т.д., однако регистр при этом не имеет никакого значения, т.е. А = а. Двоичное представление принимается “по умолчанию”
Символьное представление учитывает регистр, т.е. б > а, но А< a.
Для того, чтобы перейти к символьному методу – в начале модуля следует указать оператор Option Compare Text.