/ / Úkoly v plánu v aplikaci Excel VBA

Úkoly v plánu v aplikaci Excel VBA

Níže se podíváme na program v Excel VBA který nastavuje barvu pozadí úkoly, které jsou podle plánu na zelenou a nastaví barvu pozadí úloh, které jsou za plánem, na červenou.

Situace:

Na listu 1 máme tři úkoly (X, Y, Z). Znak "1" označuje dokončení úkolu. Úloha je naplánována, pokud existuje "1" v každém sloupci až do data včetně dnešního dne. Dnes je to 6. červen. Úkoly X a Y jsou v plánu. Úloha Z je za plánem (v buňce E8 není "1").

Úkoly v plánu v aplikaci Excel VBA

Vytvořit událost Změna pracovního listu. Kód přidaný do události Změna pracovního listu bude proveden pomocí aplikace Excel VBA při změně buňky v listu.

1. Otevřete editor jazyka.

2. Poklepejte na položku List1 (list1) v aplikaci Průzkumník projektu.

3. V levé rozevírací nabídce vyberte pracovní list. V pravém rozevíracím seznamu vyberte možnost Změnit.

Změna události pracovního listu v aplikaci Excel VBA

Přidejte následující řádky kódu do události Změna pracovního listu:

4. Deklarujte dvě proměnné typu Integer.

Dim i As Integer, j As Integer

5. Přidejte smyčku Do While Do.

Do While Cells(6 + i, 1).Value <> ""


    i = i + 1
Loop

Vysvětlení: Pro i = 0 Excel VBA zkontroluje úlohu X, pro i = 1, úlohu Y atd. Excel VBA opouští smyčku Do While při buňkách (6 + i, 1) .Value je prázdné (žádné další úkoly pro kontrolu).

Přidejte následující řádky kódů (u 6, 7 a 8) do smyčky Do While.

6. Inicializujte proměnnou j s hodnotou 0.

j = 0

7. Nastavte barvu pozadí úlohy na zelenou za předpokladu, že úkol je v plánu (to samozřejmě není samozřejmě pravda).

Cells(6 + i, 1).Interior.ColorIndex = 4

8. Přidejte další 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

Poznámka: Funkce Date vrátí dnešní datum.

Vysvětlení: Pro i = 0, j = 0 Excel VBA kontroluje buňku B6. Pro i = 0, j = 1, Excel VBA kontroluje buněk C6, atd Úkol je podle plánu, pokud existuje „1“ v každém sloupci až do dnešní "s datem. Pokud Excel VBA najde‚0‘, to nastaví barvu pozadí úlohy na červenou.

9. Otestujte program. Například uveďte, že úloha Z na 6-jun byla dokončena. V důsledku toho se úkol Z automaticky změní na zelenou.

Úkoly na výsledku plánu

Také si přečtěte: