![]() Дисциплины:
Архитектура (936) |
Подпрограмма переноса даты, сумм и назначения денежных потоков
Подпрограммы ФиксированныеПлатежи и РаспределенныеПлатежи одинаковы (рис. 26.3.). Они выполняются при активном рабочем листе ИсхДанные и их задачей является последовательное копирование областей дат, наименований статей управленческого учета и сумм на рабочих листах с этой информацией и вставка в области, отведенные для этого. Обратите внимание на две детали:
Рис. 26.3. Подпрограммы переноса платежей в модель прогнозирования денежных потоков Подпрограмма ввода формул признака денежных потоков и наименования валюты Для ввода признака денежных потоков и наименования валюты, запишите подпрограмму ФормулыВводаБюджета (рис. 26.4.), задачей которой является ввод формул определяющих - находится ли в этой строке в столбце С текст наименования статьи управленческого учета и если да, то ввести в ячейки столбца Н единицу - признак денежного потока, а в столбец К текст RUR - наименование валюты. Рис. 26.4. Подпрограммы ФормулыВводаБюджета и Вопрос Перед записью макроса введите в ячейку Н10 формулу: =ЕСЛИ(C10=0;0;"RUR") и в ячейку К10: =ЕСЛИ(C10=0;0;1) после чего запишите макрос ввода этих формул в диапазон ячеек Н10:Н1010 и К10:К1010 и последующей замены формул на вычисленные значения. Создание диалоговых окон для выбора направления выполнения подпрограммы Подпрограмма Вопрос (рис. 26.4.) предназначена для создания пользовательского диалогового окна с вопросом - сформировать ли платежный календарь (рис. 26.6.). В главе 21 было рассмотрено создание однокнопочного диалогового окна на основании функции MsgBox, которое дополнительно отображало время выполнения подпрограммы (рис. 21.11.). Рассмотрим создание других пользовательских диалоговых окон на основании этой же функции. Подпрограмма ПереносДанныхДенежныеПотоки формирует двухкнопочное пользовательское диалоговое окно (рис. 26.5.) с вопросом: Открывать файл ДенежныеПотокиБюджет?. Это может быть удобно, если пользователь передумает открывать файл и тогда нажмет на кнопку Нет. Задача подпрограммы Вопрос - создание двухкнопочного пользовательского диалогового окна (рис. 26.6.) с вопросом Создать платежный календарь?. При нажатии на кнопку Да процедура переходит к выполнению подпрограммы СозданиеПлатежногоКалендаря (рассмотрен ниже). При нажатии на кнопку Нет подпрограмма ПереносДанныхДенежныеПотоки завершает свою работу. Рис. 26.5. Пользовательское диалоговое окно с вопросом об открытии файла ДенежныеПотокиБюджет Рис. 26.6. Пользовательское диалоговое окно с вопросом о создании платежного календаря Для отображения в диалоговом окне двух кнопок в отличие от однокнопочного окна (рис. 21.11.), во втором аргументе функции MsgBox (buttons) указано цифра 4 вместо 0. Если необходимо будет создавать другие диалоговые окна, то в этом поможет таблица с перечнем аргументов для различного отображения режимов кнопок. Таблица 26.1. Допустимые значения аргумента buttons:
Первая группа значений (0-5) указывает число и тип кнопок, отображаемых в окне диалога, вторая группа (16, 32, 48, 64) задает тип используемого значка, третья (0, 256, 512) определяет кнопку, которая является основной. Просмотр данных После переноса данных фиксированных и распределенных платежей, они собраны на рабочем листе ИсхДанные файла ДенежныеПотокиБюджет и с этими данными можно производить все операции, которые заложены в эту модель. Например, определить существуют ли кассовые разрывы в ежедневном разрезе, и если да, то проанализировать как их можно устранить. Запуск модели на расчет ежедневных денежных потоков можно осуществлять непосредственно из файла ДенежныеПотокиБюджет, а можно и из файла СистемаБюджетов. Реализуйте второй вариант, написав подпрограмму, которая будет задавать и выполнять последовательность необходимых операций.
|