Udalosti v Exceli

Termín "Excel udalosť» sa používa na označenie určitých akcií vykonaných používateľom v programe Excel. Napríklad, keď používateľ prepne hárok zošita, ide o udalosť. Zadávanie údajov do bunky alebo ukladanie zošita sú tiež udalosti Excelu.

Udalosti je možné prepojiť s hárkom programu Excel, s grafmi, zošitom alebo priamo so samotnou aplikáciou Excel. Programátori môžu vytvoriť kód VBA, ktorý sa spustí automaticky, keď nastane udalosť.

Napríklad, ak chcete, aby sa makro spustilo vždy, keď používateľ prepne hárok v excelovom zošite, vytvoríte kód VBA, ktorý sa spustí vždy, keď dôjde k udalosti. SheetActivate pracovný zošit.

A ak chcete, aby sa makro spustilo zakaždým, keď prejdete na konkrétny pracovný hárok (napr. Sheet1), potom musí byť kód VBA priradený k udalosti Aktivovať pre tento list.

Kód VBA určený na spracovanie udalostí programu Excel musí byť umiestnený v príslušnom objekte pracovného hárka alebo zošita v okne editora VBA (editor je možné otvoriť kliknutím na Alt + F11). Napríklad kód, ktorý by sa mal spustiť vždy, keď nastane určitá udalosť na úrovni hárka, by sa mal umiestniť do okna kódu pre tento hárok. Toto je znázornené na obrázku:

V editore jazyka Visual Basic môžete zobraziť množinu všetkých udalostí programu Excel dostupných na úrovni zošita, pracovného hárka alebo grafu. Otvorte okno kódu pre vybraný objekt a vyberte typ objektu z ľavého rozbaľovacieho menu v hornej časti okna. V pravej rozbaľovacej ponuke v hornej časti okna sa zobrazia udalosti definované pre tento objekt. Obrázok nižšie zobrazuje zoznam udalostí spojených s pracovným hárkom programu Excel:

Udalosti v Exceli

Kliknite na požadovanú udalosť v pravom roletovom menu a do okna kódu pre tento objekt sa automaticky vloží procedúra nižšie. na čele postupu nižšie Excel automaticky vloží požadované argumenty (ak nejaké existujú). Zostáva len pridať kód VBA, aby ste určili, aké akcie má procedúra vykonať, keď sa zistí požadovaná udalosť.

Príklad

V nasledujúcom príklade vždy, keď je vybratá bunka B1 na pracovnom liste Sheet1 zobrazí sa okno so správou.

Na vykonanie tejto akcie musíme použiť udalosť pracovného hárka Selection_Change, ktorý sa vyskytuje vždy, keď sa zmení výber bunky alebo rozsahu buniek. Funkcia Selection_Change prijíma ako argument Cieľ objekt -. Takto vieme, ktorý rozsah buniek bol vybraný.

udalosť Selection_Change sa vyskytuje pri každom novom výbere. Potrebujeme však, aby sa množina akcií vykonala iba vtedy, keď je vybratá bunka B1. Ak to chcete urobiť, budeme sledovať udalosť iba v určenom rozsahu Cieľ. Ako je to implementované v programovom kóde uvedenom nižšie:

„Kód na zobrazenie okna so správou, keď je vybratá bunka B1“ na aktuálnom hárku. Private Sub Worksheet_SelectionChange(ByVal Target As Range) 'Skontrolujte, či je vybratá bunka B1. vybral bunku B1" End If End Sub

Nechaj odpoveď