Чтобы проверить, как работает созданная программа, нажмите кнопку Запуск программы /UserForm (Run) .
4. Пример VBA- программы с размещением исходных данных и кнопок управления на рабочем листе Excel.
Рассмотрим задачу расчета прибыли по нескольким сценариям.
Предположим, что фирма производит изделие, для изготовления которого нужно затратить определенное количество рабочего времени и материалов. Менеджер пытается рассчитать прибыль, однако, у него нет точных сведений о том, каковы будут почасовая оплата труда, стоимость единицы материала и количество материала. Эти данные определяются по трем сценариям, приведенным в табл. 1.
Таблица.1
Сценарии | |||
Почасовая оплата Цена единицы материала 1 Цена единицы материала 2 Количество материала 1 Количество материала 2 |
Для расчета прибыли на рабочем листе Excel необходимо создать рабочую таблицу
Себестоимость изделия вычисляется в ячейке В7 по формуле = СУММПРОИЗВ(В1:В3;В4:В6).
Отпускная цена вычисляется в ячейке В9 по формуле =В7*(1+В8).
|
|
Прибыль на одно изделие вычисляется в ячейке В10 по формуле =В9-В7.
Суммарная прибыль вычисляется в ячейке В12 по формуле = В10*В11.
Запуск процедур для ввода данных в соответствующие ячейки (ячейки В1, В2, В3, В5, В6, которым необходимо присвоить имена: В1 – стоимость_услуг, В2 – стоимость_материала1 и т.д.) осуществляется с помощью кнопок Вариант 1, Вариант 2, Вариант 3, размещенных на рабочем листе Excel. Кнопки необходимо связать с процедурами, чтобы при щелчке (Click) по кнопке запускалась соответствующая процедура, например, при щелчке по кнопке Вариант 1 с помощью процедуры Sub Вариант_1 () будет осуществлен ввод данных в таблицу 1 варианта.
Ввод данных в ячейки В1, В2, В3, В5, В6 осуществляется по варианту, для чего необходимо создать 3 процедуры
Private Sub CommandButton1_Click ()
Range(“Стоимость_услуг”)=23
Range(“Стоимость_материала1”)=62
Range(“Стоимость_материала2”)=32
Range(“Количество_материала1”)=5
Range(“Количество_материала2”)=3
End Sub
Private Sub CommandButton1_Click ()
Range(“Стоимость_услуг”)=29
Range(“Стоимость_материала1”)=55
Range(“Стоимость_материала2”)=24
Range(“Количество_материала1”)=3
Range(“Количество_материала2”)=6
End Sub
Private Sub CommandButton1_Click ()
Range(“Стоимость_услуг”)=31
Range(“Стоимость_материала1”)=59
Range(“Стоимость_материала2”)=27
Range(“Количество_материала1”)=3
Range(“Количество_материала2”)=4
End Sub