/ / Užduotys dėl tvarkaraščio Excel VBA

Užduotys Tvarkaraštyje Excel VBA

Žemiau apžvelgsime programą Excel VBA kuri nustato fono spalvą užduotis, kurios yra tvarkaraštyje žalias ir nustato užfiksuotų užduočių fono spalvą raudonai.

Padėtis:

"On Sheet1" mes turime tris užduotis (X, Y, Z). "1" rodo, kad užduotis buvo baigta. Užduotys yra tvarkaraštyje, jei "1" egzistuoja kiekviename stulpelyje iki šiandieninės datos, įskaitant šiandien. Šiandien jis yra 6-jun. Užduotys X ir Y yra tvarkaraštyje. Užduotis Z yra už grafiko (ląstelėje E8 - ne "1").

Užduotys Tvarkaraštyje Excel VBA

Sukurkite darbo lapo keitimo įvykį. Kodą, pridėtą prie darbų sąrašo pakeitimo įvykio, atliks "Excel VBA", kai pakeisite ląstelę darbalapyje.

1. Atidarykite "Visual Basic" redaktorių.

2. Dukart spustelėkite Sheet1 (Sheet1) "Project Explorer".

3. Iš kairės išskleidžiamojo sąrašo pasirinkite Darbo lapą. Iš dešinės išskleidžiamojo sąrašo pasirinkite Keisti.

Darbalaukio keitimo įvykis programoje "Excel VBA"

Į darbų sąrašo keitimo įvykį pridėkite šias kodo eilutes:

4. Paskelbkite du kintamuosius tipo Integer.

Dim i As Integer, j As Integer

5. Pridėkite "Do Loop".

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


    i = i + 1
Loop

Paaiškinimas: jei i = 0, "Excel VBA" patikrina užduoties X, jei i = 1, užduotis Y ir tt Excel VBA palieka "Do Loop", kai ląstelės (6 + i, 1). Vertė yra tuščias (daugiau užduočių patikrinti nereikia).

Įtraukite šias kodo eilutes (6, 7 ir 8) į "Do Loop".

6. Inicializuokite kintamąjį j, kurio vertė 0.

j = 0

7. Nustatykite užduoties fono spalvą žaliai, darant prielaidą, kad užduotis yra suplanuota (tai nebūtinai yra tiesa, žinoma).

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

8. Įtraukite dar vieną "Do 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

Pastaba: funkcija Data grąžina šiandienos datą.

Paaiškinimas: Jei i = 0, j = 0, Excel VBA tikrina ląstelę B6. Jei i = 0, j = 1, Excel VBA tikrina ląstelių C6 ir tt Užduotys yra tvarkaraštyje, jei "1" egzistuoja kiekviename stulpelyje iki šios datos, įskaitant "today" datą. Jei "Excel VBA" nustato "0" nustato užduoties fono spalvą raudonai.

9. Patikrinkite programą. Pavyzdžiui, nurodykite, kad uždavinys Z 6-jun baigtas. Todėl Z užduotis automatiškai pasidaro žalinga.

Tvarkaraščio rezultatų užduotys

Taip pat perskaitykite: