Читайте также: |
|
Простейшей задачей, решаемой на VBA, является создание функций пользователя, имеющих имена. С функциями пользователя можно работать с помощью мастера функций точно так же, как и со встроенными функциями рабочего листа.
Создадим, например, функцию пользователя, математически определенную следующим образом: хÎ[-2; 1,5]
Функции пользователя создаются с использованием редактора VBA, после чего с ними можно работать с помощью мастера функций. Функция пользователя является частью программного модуля.
Первоначально, на листе Excel создаем ряд значений аргумента х. Выбрать шаг изменения аргумента 0,1. Тогда будет заполнен диапазон А1:А36.
Для создания модуля VBA необходимо выполнить следующие действия:
1. Войти в редактор VBA с помощью команды Сервис- Макрос-Редактор VBA.
2. Выполнить команду Вставка- Модуль (Insert-Module).
3. На листе модуля ввести текст следующей программы:
Function Y(x)
Y = Sin(Application.Pi() * x)*Exp(-2*x)
End Function
Пример окна редактора VBA приведен на рисунке 1.
Затем перейти на лист Excel, выделить ячейку В1. И вызвать созданную функцию, для этого выполнить следующие действия:
Вставка—Функция—Категория «Определенные пользователем».
В открывшемся списке выбрать функцию Y, ввести в качестве аргумента адрес ячейки А1 и нажать ОК. Затем растиражировать функцию на все значения аргумента.
Пример вызова функции, приведен на рисунке 2.
В VBA имеются большой набор встроенных функций и процедур, использование которых существенно упрощает программирование.
В таблице 1 перечислены математические функции, используемые в VBA.
Таблица 1 Математические функции
Функции | Возвращаемое значение |
Abs | Модуль (абсолютная величина) числа |
Atn | Арктангенс |
Cos | Косинус |
Exp | Экспонента, т.е. результат возведения основания натурального логарифма в указанную степень (ех) |
Log | Натуральный логарифм (основание е=2.71828…) |
Rnd | Случайное число из интервала [0.1) Если число меньше нуля, то Rnd возвращает каждый раз одно и тоже число, используя аргумент в качестве опорного числа; если число больше нуля или аргумент опущен, то – следующее случайное число в последовательности; если число равняется нулю, то случайное число, возвращенное при предыдущем вызове этой функции. Перед вызовом функции Rnd используйте инструкцию Randomize без аргумента |
Sgn | Знак числа |
Sin | Синус |
Sqr | Квадратный корень из числа |
Tan | Тангенс |
Fix и Int | Обе функции, Int и Fix, отбрасывают дробную часть числа и возвращают целое значение. Различие между функциями Int и Fix состоит в том, что для отрицательного значения аргумента число функция Int возвращает ближайшее отрицательное целое число, меньшее либо равное указанному, а Fix - ближайшее отрицательное целое число, большее либо равное указанному |
Дата добавления: 2015-07-08; просмотров: 365 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Впр8- да. | | | Программирование алгоритмов разветвляющейся структуры |