Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
Топ:
Основы обеспечения единства измерений: Обеспечение единства измерений - деятельность метрологических служб, направленная на достижение...
Характеристика АТП и сварочно-жестяницкого участка: Транспорт в настоящее время является одной из важнейших отраслей народного хозяйства...
Проблема типологии научных революций: Глобальные научные революции и типы научной рациональности...
Интересное:
Мероприятия для защиты от морозного пучения грунтов: Инженерная защита от морозного (криогенного) пучения грунтов необходима для легких малоэтажных зданий и других сооружений...
Финансовый рынок и его значение в управлении денежными потоками на современном этапе: любому предприятию для расширения производства и увеличения прибыли нужны...
Как мы говорим и как мы слушаем: общение можно сравнить с огромным зонтиком, под которым скрыто все...
Дисциплины:
2020-11-03 | 132 |
5.00
из
|
Заказать работу |
|
|
Теоретические сведения
Простейшей задачей, решаемой на 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 - ближайшее отрицательное целое число, большее либо равное указанному |
ПРИМЕР.
Пусть требуется написать программу для вычисления функции, заданной формулой:
Очевидно, что функция имеет два условия. Поэтому следует использовать условный оператор If … Then … Else.
Текст программы для расчета этой функции следующий:
Function Y(x)
If x < 0 Then
Y = Abs(x) / (1 + x ^ 2) * Exp(-2 * x)
Else
If x < 1 Then
Y = Sqr(1 + x ^ 2)
Else
Y = (1 + Sin(x)) / (1 + x ^ 2) + 3 * x
End If
End If
End Function
Аналогично можно организовать вложенность любого числа If.
2.4. Задание для самостоятельного выполнения.
Напишите пользовательскую функцию, вычисляющую значения функции и постройте с ее помощью график.
Вариант 1
·
·
·
Вариант 2
·
·
·
Вариант 3
1. Построить в разных системах координат при хÎ[-1,8; 1,8] графики функций:
|
·
·
·
Вариант 4
·
·
·
Вариант 5
·
·
·
Вариант 6
·
·
·
Задание на разработку.
С помощью EXCEL и программы на VBA составить таблицу начисления премии по итогам работы сети трех магазинов с января по декабрь по следующему правилу:
1. Если продукции продано не меньше, чем на 2300 грн., то комиссионные составляют 2%.
2. За первое место начисляется дополнительно 2%, за второе – 1% и т.д.
Таблица для расчета должна содержать следующие поля:
месяц | магазин 1 | магазин 2 | магазин 3 | ||||||
реализация | место | премия | реализация | место | премия | реализация | место | премия | |
Размер полей реализация и место заполнить произвольными данными. Поле премия будет рассчитано с помощью пользовательской функции, которую надо разработать самостоятельно.
3.2. Методика выполнения задания
1. Создание таблицы исходных данных.
2. Сервис ® Макрос ® Редактор Visual Basic.
3. Вставка ® Модуль.
4. Вставка ® Процедура
5. Указать имя: premia.
6. Указать тип процедуры: функция.
7. Создать текст процедуры.
8. Применить разработанную функцию для расчета премии.
Теоретические сведения
Простейшей задачей, решаемой на 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 - ближайшее отрицательное целое число, большее либо равное указанному |
Программирование алгоритмов разветвляющейся структуры
2.1. Цель работы: изучение методов алгоритмизации и программирования алгоритмов разветвляющейся структуры.
|
|
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...
Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!