Календарно-сетевой график в днях в MS EXCEL

history

Создадим календарно-сетевой график в днях в MS EXCEL. График сделаем в рабочих днях, со связями, с переменной временной шкалой, запаздыванием, % выполнения и текущей датой.

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

Совет: В данной статье диаграмма выполнена с помощью Условного форматирования (далее УФ). Для тех, кто мало знаком с этим инструментом MS EXCEL рекомендуется прочитать вот эту статью про УФ.

Построение графика

Для построения графика, изображенного выше, нам потребуются следующие исходные данные:

  • Длительность каждой работы
  • Предшественник работы
  • Запаздывание относительно окончания работы-предшественника
  • % выполнения

Построение диаграммы Ганта сделано аналогично вышеупомянутой статьи. Всего используется 2 правила УФ, одно для отображения плановой длительности, другое - для % выполнения.

Все работы имеют код, кратный 10. Все работы связаны и почти все имеют предшественника (см. столбец Предшественник). Те работы, которые не имеют предшественника, начинаются с даты начала проекта (эта дата в желтой ячейке над графиком). Расчет начала работ выполняется довольно замысловатой формулой, чтобы отобразить связь между работами:

=ЕСЛИ(ЕПУСТО([@[Предше-ственник]]);$C$9;ИНДЕКС([Дата окончания];ПОИСКПОЗ([@[Предше-ственник]];[№];0))+1+[@[Запаз-дывание]])

Примечание: Если требуется понять логику работы формулы, то она подробно разбирается в вышеуказанной статье. Единственное отличие - в данной статье таблица с исходными данными сделана в формате таблиц EXCEL.

Длительность задается в рабочих днях. Предполагается, что в выходные дни работа не ведется. Если работа длится 2 рабочих дня и начинается, например, в пятницу, то она закончится в понедельник.

Дата окончания вычисляется с помощью формулы =РАБДЕНЬ(D15;E15-1), которая вычисляет дату, отстоящую на заданное количество дней (длительность работы) от даты начала.

Текущая дата

Текущая дата отображается на диаграмме автоматически с помощью формулы 

=ЕСЛИ(ИЛИ(J$14=СЕГОДНЯ();И(I$14<СЕГОДНЯ();K$14>СЕГОДНЯ();K15<>СИМВОЛ(124)));СИМВОЛ(124);"")

СИМВОЛ(124) - это вертикальная черта, которая отображается, если дата в строке 14 совпадает с текущей датой. Формула могла быть совсем простой:

=ЕСЛИ(J$14=СЕГОДНЯ();СИМВОЛ(124);"")

но из-за того, что график позволяет изменять временной масштаб, то формула становится несколько сложнее.

Изменение временного масштаба графика

По умолчанию детализация диаграммы Ганта равна 1 календарному дню, но с помощью элемента управления счетчик можно уменьшить детализацию до 14 дней (даты в соседних ячейках диаграммы будут отличаться на 14 дней). Степень детализации в днях указана в ячейке С12, шаг детализации указан в ячейке K8. Он меняется от 1 до 5: 

  • шаг 1 соответствует детализации 1 день
  • шаг 2 соответствует детализации 2 дня
  • шаг 3 соответствует детализации 3 дня
  • шаг 4 соответствует детализации 7 дней
  • шаг 5 соответствует детализации 14 дней

Все вычисления делаются в строке 14 с помощью простой формулы =ЕСЛИ(J14<=$C$10;J14+$C$12;""). Если дата выходит за диапазон срока выполнения проекта, то на диаграмме она не отображается.

При выборе детализации равной 7 дней (неделя) график выглядит следующим образом:

Это не очень наглядно, т.к. мы привыкли при недельной детализации одновременно видеть месяц, к которому принадлежит та или иная неделя (в нашем случае названия месяцев, повернутых на 90 градусов, различаются с трудом). Этот вариант сделать несколько сложнее, о том как его реализовать рассказано в статье про календраный график в неделях.

 



Комментарии

Только для авторизованных пользователей

(только для авторизованных пользователей)

© Copyright 2013 - 2024 Excel2.ru. All Rights Reserved