Plánované úkoly v aplikaci Excel VBA - snadná makra aplikace Excel

Obsah

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í úkolů, které jsou za plánem, na červenou.

Situace:

Na listu 1 máme tři úkoly (X, Y, Z). „1“ znamená, že úkol byl dokončen. Úkol je podle plánu, pokud existuje „1“ v každém sloupci až do dnešního data včetně. Dnes je 6. června. Úkoly X a Y jsou podle plánu. Úkol Z zaostává za plánem (v buňce E8 není „1“).

Vytvořte událost změny listu. Kód přidaný do události změny pracovního listu provede Excel VBA, když změníte buňku na listu.

1. Otevřete editor jazyka.

2. Poklepejte na List1 (List1) v Průzkumníku projektů.

3. V levém rozevíracím seznamu vyberte list. V pravém rozevíracím seznamu vyberte Změnit.

Do události změny listu přidejte následující řádky kódu:

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

Dim i jako celé číslo, j jako celé číslo

5. Přidejte smyčku Do While.

Dělejte v buňkách (6 + i, 1). Hodnota ""
i = i + 1
Smyčka

Vysvětlení: Pro i = 0 Excel VBA kontroluje úlohu X, pro i = 1, úkol Y atd. Excel VBA opouští smyčku Do While, když jsou buňky (6 + i, 1). Hodnota je prázdná (žádné další úkoly ke kontrole) .

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

6. Inicializujte proměnnou j s hodnotou 0.

j = 0

7. Nastavte barvu pozadí úkolu na zelenou za předpokladu, že je úkol podle plánu (to samozřejmě nemusí nutně platit).

Buňky (6 + i, 1). Interiér.ColorIndex = 4

8. Přidejte další smyčku Do While.

Dělejte při buňkách (4, 2 + j). Hodnota <= datum
Pokud buňky (6 + i, 2 + j). Hodnota = 0, pak buňky (6 + i, 1). Interior.ColorIndex = 3
j = j + 1
Smyčka

Poznámka: funkce Date vrací dnešní datum.

Vysvětlení: Pro i = 0, j = 0 Excel VBA kontroluje buňku B6. Pro i = 0, j = 1 Excel VBA zkontroluje buňku C6 atd. Úkol je naplánován, pokud v každém sloupci až do dnešního data včetně existuje „1“. Pokud Excel VBA najde „0“, nastaví barvu pozadí úkolu na červenou.

9. Otestujte program. Uveďte například, že úkol Z 6. června byl dokončen. V důsledku toho se úkol Z automaticky změní na zelenou.

Vám pomůže rozvoji místa, sdílet stránku s přáteli

wave wave wave wave wave