Задачи по график в Excel VBA - Лесни макроси на Excel

Съдържание

По -долу ще разгледаме програма в Excel VBA който задава цвета на фона на задачи, които са по график на зелено и задава цвета на фона на задачи, които са зад графика, на червен.

Ситуация:

На Sheet1 имаме три задачи (X, Y, Z). "1" показва, че задачата е изпълнена. Задача е по график, ако „1“ съществува във всяка колона до и включително днешната дата. Днес е 6 юни. Задачите X и Y са по график. Задача Z изостава от графика (няма "1" в клетка E8).

Създайте събитие за смяна на работен лист. Кодът, добавен към събитието за смяна на работния лист, ще бъде изпълнен от Excel VBA, когато промените клетка на работен лист.

1. Отворете редактора на Visual Basic.

2. Щракнете двукратно върху Sheet1 (Sheet1) в Project Explorer.

3. Изберете Работен лист от левия падащ списък. Изберете Промяна от десния падащ списък.

Добавете следните кодови редове към събитието за смяна на работния лист:

4. Декларирайте две променливи от тип Integer.

Dim i като цяло число, j като цяло число

5. Добавете цикъл Do While.

Do Do Cells (6 + i, 1). Стойност ""
i = i + 1
Цикъл

Обяснение: За i = 0 Excel VBA проверява задача X, за i = 1, задача Y и т.н. Excel VBA напуска цикъла Do While, когато клетките (6 + i, 1). Стойността е празна (няма повече задачи за проверка) .

Добавете следните кодови редове (на 6, 7 и 8) към цикъла Do While.

6. Инициализирайте променливата j със стойност 0.

j = 0

7. Задайте цвета на фона на задача на зелен, като приемете, че дадена задача е по график (това не е задължително да е вярно, разбира се).

Клетки (6 + i, 1). Интериор. Цветен индекс = 4

8. Добавете друг Do While Loop.

Do While Cells (4, 2 + j). Value <= Date
Ако клетки (6 + i, 2 + j). Стойност = 0 Тогава клетки (6 + i, 1). Интериор. Цвят индекс = 3
j = j + 1
Цикъл

Забележка: Функцията Date връща днешната дата.

Обяснение: За i = 0, j = 0, Excel VBA проверява клетка В6. За i = 0, j = 1, Excel VBA проверява клетка C6 и т.н. Ако Excel VBA намери "0", той задава цвета на фона на задачата в червено.

9. Тествайте програмата. Например, посочете, че задача Z на 6 юни е изпълнена. В резултат на това задача Z автоматично ще стане зелена.

Така ще помогнете за развитието на сайта, сподели с приятелите си

wave wave wave wave wave