Логотип
Наши проекты » Работы в Excel » График выполнения работ

График выполнения работ на диаграмме Ганта в Excel

Сделали в Excel программу, которая позволит автоматизировать процесс построения графика выполнения работы с помощью диаграммы Ганта с возможностью мониторинга отставания работ, изменения шага графика и пр.

Постановка задачи

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

Вид графика до автоматизации:

Исходная диаграмма Ганта

В результате небольшого аудита было сформировано несколько проблем.

Проблема №1: формирование шапки графика с указанием даты начала и завершения работ. Для удобства работы необходим шаг графика, например, месяц, треть месяца. Вручную это неудобно, так как для графика нужны опорные даты, которые, при таком шаге графика приходится расставлять вручную.

Проблема №2: многоуровневая нумерация. Из-за большого количества строк и многоуровневой структуры приходиться совершать много ручной работы. Нумерация должна иметь вид 1.1.1.1, где каждое следующие число определяет порядковый номер пункта списка в иерархии.

Проблема №3: расстановка формул. Так как формулы необходимо вставлять в зависимости от уровня вложенности пункта приходится их расставлять и проверять для всего графика вручную, при этом в графике могут быть десятки, а то и сотни строк. 

Проблема №4: удобное визуальное представление дат проверки по документам и по факту, с возможность переключения между ними. В текущем варианте для переключения между этими датами нужно заново вводить дату в поле текущей даты.

Как мы решали задачу

Формирование шапки графика с указанием даты начала и завершения работ

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

Диапазон графика

А изменяя шаг графика можно выбрать уровень детализации графика. Список вариантов шага графика: месяц, полмесяца, треть месяца, четверть месяца и день. Однако, при желании можно выбрать абсолютно любую длину шага.

Изменение шага графика

Многоуровневая нумерация

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

Многоуровневая нумерация

Расстановка формул

Теперь, когда есть функционал выбора глубины вложенности можно реализовать автоматическую расстановку формул. При нажатии на кнопку «Перестроить график» программа анализирует иерархию работ и расставляет все формулы, а также вставляет строку итогов. Например, в приведенном выше примере, готовность рассчитывается как средневзвешенное от значений подуровня. И такая формула проставляется каждому пункту работ, если у него есть подуровни.

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

К автоматически выставляемым формулам относятся:

  1. Формулы дат. Для пунктов, у которых есть подуровни в столбцы «Начала работ» и «Окончания работ» вставляются формулы, которые гарантируют, что уровень иерархии будет включать все временные интервалы подуровня. Например, если мы на уровне 2 перенесем дату окончания работ на срок, который лежит позже даты окончания работ верхнего уровня, то дата верхнего уровня автоматически измениться на новую, чтобы включить в себя новый временной промежуток. Это касается всех уровней. То есть если мы изменим дату на 4 уровне, то при необходимости даты изменятся на 3, 2 и 1 уровнях. Это экономит время и уменьшает количество ошибок.
  2. Длительность в днях. Рассчитывается как разность между датами окончания и начала работ. В принципе тут нет ничего особенного, но тем не менее экономит время и выглядит лаконичней, чем протягивание формул с запасом.
  3. Отставание в днях. Формула, учитывающая сроки работ, дату проверки и процент готовности. Результат отображается в днях. При этом отставания имеет красный цвет, а опережение зеленый. Что удобно при беглом визуальном анализе. Так же формула учитывает такие случаи как нулевая готовность при дате проверке до начала работ, в таком случае в отставание будет указан 0. То же самое касается и случая 100% готовности при дате проверке после даты окончания работ.

Удобное визуальное представление дат проверки

Выбор даты

При вводе дат в поля «Дата отчета по фотографиям» и «Дата отчета по документам» на графике отображается красная линия, показывающая положение введенной даты на графике, в зависимости от того какой типа отчета выбран в разделе «Дополнительные».

Визуализация отставаний

Итог

Для решения поставленной задачи достаточно вставить наименования работ, проставить уровни иерархии и нажать кнопку «Перестроить график». После чего уже вводить даты и уровни готовности в нижние уровни иерархии, при этом график и верхние уровни будут автоматически перестраиваться и заполнятся. Таким образом довольно сложный отчет может быть сформирован при минимуме затраченного времени.

Комментарии:

comments powered by Disqus