Офисное программирование

ОглавлениеДобавить в закладки К обложке

7.2. Использование возможностей VBA при непосредственных расчетах

Создание VBA-программ

Пример 47. Дан табличный документ указанного ниже вида. Необходимо:

1) создать шаблонную часть этого документа с помощью табличного процессора Excel;

2) составить программу на языке VBA, которая будет запрашивать у пользователя исходные данные для заполнения этой таблицы, производить необходимые расчеты и помещать все данные в соответствующие ячейки, предусмотренные в шаблоне.

Отклонение фактического уровня издержек обращения от плана за месяц _________________ 20__ г.

Звездочкой (*) помечены те графы таблицы, по которым необходимо подвести итог.

Технология выполнения

Анализ таблицы показывает, что вид деятельности, прогноз прибыли и фактическая прибыль являются исходными данными, отклонение (в процентах и в сумме) – расчетными. Кроме того, рассчитываются итоги по некоторым графам таблицы.

Создание шаблона табличного документа

Шаблон создается на обычном рабочем листе в Excel. При этом необходимо только зарезервировать свободные ячейки для занесения следующих данных: месяц, год, потребительское общество, сумма издержек, товарооборот, уровень издержек. Поскольку заранее неизвестно количество потребительских обществ, то ячейки для итогов и ФИО экономиста заранее не резервируются. Рабочий лист переименован в Отчет. Реализация такого шаблона представлена на рис. 96.

Рис. 96. Шаблон-заготовка табличного документа

На этом рисунке желтым цветом обозначены те ячейки, которые во время работы программы будут заполняться исходными и расчетными данными.

Математическая модель решения задачи

Кроме организации ввода исходных данных и вывода их в некоторые ячейки электронной таблицы, программа должна производить расчет отклонений и итоговых значений по графам «Сумма издержек – план», «Сумма издержек – факт», «Товарооборот – план», «Товарооборот – факт», «Уровень издержек – план», «Уровень издержек – факт», «Отклонение по уровню». Для расчетных величин используем следующие переменные:

Nomer – номер текущей строки таблицы;

SP – планируемая сумма издержек;

SF – фактическая сумма издержек;

TP – планируемый товарооборот;

TF – фактический товарооборот;

IP – планируемый уровень издержек;

EF – фактический уровень издержек;

ItogSP – накопление итога по столбцу «планируемая сумма издержек»;

ItogSF – накопление итога по столбцу «фактическая сумма издержек»;

ItogTP – накопление итога по столбцу «планируемый товарооборот»;

ItogTF – накопление итога по столбцу «фактический товарооборот»;

ItogIP – накопление итога по столбцу «планируемый уровень издержек»;

ItogEF – накопление итога по столбцу «фактический уровень издержек».

С учетом введенных обозначений расчетные формулы будут иметь следующий вид:

1) для отклонений:

[Отклонение в %] = (F – P) / P * 100

[Отклонение в сумме] = F – P

Результаты этих вычислений можно не сохранять в отдельных переменных, так как они сразу могут быть занесены в соответствующие ячейки электронной таблицы;

2) для итогов по прогнозу и факту:

ItogP = ItogP + P

ItogF = ItogF + F

Эти формулы реализуют алгоритм получения итоговой суммы методом накопления, когда величина прогноза (факта), соответствующая очередному виду деятельности, добавляется к сумме соответствующих величин по уже рассмотренным видам деятельности. Назовем эти суммы промежуточными. Когда будут обработаны все виды деятельности, промежуточные суммы превратятся в окончательные – итоговые. В начале этого процесса (до того, как будет рассчитываться первая промежуточная сумма) переменные ItogP и ItogF равны нулю;

3) для итогов по отклонениям:

[итоговое отклонение в процентах] = (ItogF – ItogP) / ItogP * 100

[итоговое отклонение в сумме] = ItogF – ItogP

Результаты этих вычислений можно не сохранять в отдельных переменных, так как они сразу могут быть занесены в соответствующие ячейки электронной таблицы.

Разработка интерфейса пользователя


Логин
Пароль
Запомнить меня