Шаг 389.
VBA в MSExcel. Модель прогнозирования денежных потоков... . Заполнение платежного календаря суммами ежедневных оборотов денежных средств

    На этом шаге мы рассмотрим алгоритм заполнения платежного календаря.

    Подпрограмма ЗаполнениеПлатежногоКалендаряПоДатам (рисунок 1) состоит из трех составляющих:


Рис.1. Подпрограмма ЗаполнениеПлатежногоКалендаряПоДатам

    Критериями при выборе данных служат:

Формулы расчета ежедневных оборотов денежных средств

    Для ввода формул определения ежедневных оборотов денежных средств запишите макрос ФормулыЗаполненияПлатежногоКалендаря, предварительно введя следующие формулы. В ячейке ВА10 формула:

  =ЕСЛИ(МЕСЯЦ(ИсхДанные!D10)=$D$2;
    ЕСЛИ(ДЕНЬ(ИсхДанные!D10)=$BA$1;ИсхДанные!C10;0);0)
которая сначала определяет, соответствует ли номер месяца в дате, находящейся в ячейке D10 рабочего листа ИсхДанные номеру месяца, введенному в ячейку D2 рабочего листа ПК. При выполнении этого условия проверяется следующее условие: соответствует ли номер дня месяца этой даты номеру дня месяца, вводимого в ячейку ВА1 рабочего листа ПК. При выполнении этих условий формула возвращает наименование проводимой операции, введенной в ячейку D10 рабочего листа ИсхДанные. В противном случае формула возвращает значение 0.

    Формула в ячейке ВВ10:

  =ЕСЛИ(BA10=0;0;СУММ(ИсхДанные!I10:J10))
проверяет результат вычисления формулы в ячейке ВА10. Если результат не равен нулю, то формула суммирует значение поступления и списания денежных средств по этой операции, содержащихся в ячейках I10:J10 рабочего листа ИсхДанные. Суммирование значений доходных и расходных статей объясняется тем, что в ячейках I10:J10 значения одновременно содержаться не могут. Это должно обязательно учитываться при формировании таблицы на листе ИсхДанные, ведь иначе такая запись не будет иметь никакого смысла.

    Формула в ячейке ВС12:

  =СУММЕСЛИ($BA$10:$BA$5000;$C12;$BB$10:$BB$5000)
суммирует обороты движения денежных средств в области ячеек ВВ10:ВВ5000 за номер дня месяца, введенного в ячейку ВА1 и при условии, что текст наименования статьи в ячейке С12 идентичен тексту наименования статьи в области ячеек ВА10:ВА5000.

    Запись макроса заключается в последовательном вводе этих формул в диапазоны ячеек BC12:BC79, ВА10:ВА5000 и ВВ10:ВВ5000.


Рис.2. Подпрограмма ввода формул определения оборотов за день по каждой статье управленческого учета

Цикл заполнения платежного календаря ежедневными оборотами движения денежных средств

    Основным элементом автоматического заполнения платежного календаря ежедневными оборотами ДДС является цикл For-Next. Последовательность выполняемых циклом операций в подпрограмме ЗаполнениеПлатежногоКалендаряПоДатам (рисунок 1) следующая:

    На следующем шаге мы рассмотрим ввод дат и сальдо на начало дня.




Предыдущий шаг Содержание Следующий шаг