Plánované úlohy v programe Excel VBA - ľahké makrá programu Excel

Obsah

Nižšie sa pozrieme na program v Excel VBA ktorý nastavuje farbu pozadia úlohy, ktoré sú podľa plánu na zelenú a nastaví farbu pozadia úloh, ktoré zaostávajú za plánom, na červenú.

Situácia:

Na hárku 1 máme tri úlohy (X, Y, Z). „1“ znamená, že úloha bola dokončená. Úloha je naplánovaná, ak existuje 1 v každom stĺpci až do dnešného dátumu vrátane. Dnes je 6. Úlohy X a Y sú naplánované. Úloha Z mešká (v bunke E8 nie je „1“).

Vytvorte udalosť zmeny pracovného hárka. Kód pridaný do udalosti zmeny pracovného hárka vykoná Excel VBA, keď zmeníte bunku v hárku.

1. Otvorte editor jazyka Visual Basic.

2. Dvakrát kliknite na Sheet1 (Sheet1) v programe Project Explorer.

3. V ľavom rozbaľovacom zozname vyberte Pracovný list. V pravom rozbaľovacom zozname vyberte položku Zmeniť.

Do udalosti zmeny pracovného hárka pridajte nasledujúce riadky kódu:

4. Deklarujte dve premenné typu Integer.

Dim i ako celé číslo, j Ako celé číslo

5. Pridajte slučku Do While.

Robiť počas buniek (6 + i, 1). Hodnota „“
i = i + 1
Slučka

Vysvetlenie: Pre i = 0 Excel VBA kontroluje úlohu X, pre i = 1, úlohu Y atď. Excel VBA opúšťa slučku Do While, keď sú bunky (6 + i, 1). Hodnota je prázdna (nie je potrebné kontrolovať žiadne ďalšie úlohy) .

Pridajte nasledujúce riadky kódu (na 6, 7 a 8) do slučky Do While.

6. Inicializujte premennú j s hodnotou 0.

j = 0

7. Nastavte farbu pozadia úlohy na zelenú za predpokladu, že je úloha v pláne (samozrejme to nemusí nutne platiť).

Bunky (6 + i, 1). Interiér.ColorIndex = 4

8. Pridajte ďalšiu slučku Do While.

Vykonajte bunky (4, 2 + j). Hodnota <= dátum
Ak bunky (6 + i, 2 + j). Hodnota = 0, potom bunky (6 + i, 1). Interiér.ColorIndex = 3
j = j + 1
Slučka

Poznámka: funkcia Date vráti dnešný dátum.

Vysvetlenie: Pre i = 0, j = 0, Excel VBA kontroluje bunku B6. Pre i = 0, j = 1, Excel VBA kontroluje bunku C6 atď. Úloha je naplánovaná, ak v každom stĺpci až do dnešného dátumu vrátane existuje „1“. Ak Excel VBA nájde „0“, nastaví farbu pozadia úlohy na červenú.

9. Otestujte program. Uveďte napríklad, že úloha Z 6. júna bola dokončená. V dôsledku toho sa úloha Z automaticky zmení na zelenú.

Vám pomôže rozvoju miesta, zdieľať stránku s priateľmi

wave wave wave wave wave