Задачи по графику в Excel VBA
Ниже мы рассмотрим программу в Excel VBA, который устанавливает цвет фона задач, которые по графику на зеленый, и устанавливает цвет фона задач, которые отстают от графика на красный.
Ситуация:
На Лист1 у нас есть три задачи (X, Y, Z). А «1» указывает на то, что задача была завершена. Задача по графику, если «1» есть в каждой колонке, вплоть до текущей даты. Сегодня это 6-Июнь Задачи X и Y по графику. Задача Z отстает от графика (не «1» в ячейке E8).
Создание рабочего листа Изменить событие. Код добавлен в Worksheet Change Event будет выполняться Excel VBA при изменении ячейки на листе.
-
Откройте редактор Visual Basic.
-
Дважды щелкните на Sheet1 (Лист1) в окне Project Explorer.
-
Выберите рабочий лист из списка слева раскрывающегося списка. Выберите Изменить справа в раскрывающемся списке.
Добавьте следующие строки коды к планшетному Change Event:
-
Объявите две переменные типа Integer.
Dim i As Integer, j As Integer
-
Добавьте Do While Loop.
Do While Cells(6 + i, 1).Value <> "" i = i + 1 Loop
Объяснение: Для я = 0, Excel VBA проверяет задачу X, для я = 1, задача Y и т.д.
Excel VBA оставляет делать во время цикла, когда клетки (6 + я, 1) .Value пуста (не больше задач для проверки).
Добавьте следующие строки кода (на 6, 7 и 8) в Do While Loop.
-
Инициализировать переменную J со значением 0.
j = 0
-
Установите цвет фона задачи на зеленый при условии, что задача по расписанию (это не обязательно, конечно).
Cells(6 + i, 1).Interior.ColorIndex = 4
-
Добавьте еще один Do While Loop.
Do While Cells(4, 2 + j).Value <= Date If Cells(6 + i, 2 + j).Value = 0 Then Cells(6 + i, 1).Interior.ColorIndex = 3 j = j + 1 Loop
Примечание: функция даты возвращает текущую дату.
Объяснение: Для я = 0, J = 0, Excel VBA проверяет ячейку B6. Для я = 0, J = 1, Excel VBA проверяет ячейку C6 и т.д. Задача по расписанию, если «1» существует в каждом столбце, вплоть до сегодняшнего дня. Если Excel VBA находит «0», он задает цвет фона задачи на красный.
-
Тест программы. Например, указать, что задача Z 6-Jun завершена. В результате, задача Z автоматически зеленеть.