Avvenimenti f'Excel

It-terminu "Avveniment Excel» jintuża biex jindika ċerti azzjonijiet imwettqa mill-utent f'Excel. Pereżempju, meta utent jaqleb folja tal-ktieb tax-xogħol, dan huwa avveniment. Id-dħul ta 'dejta f'ċellula jew is-salvataġġ ta' ktieb tax-xogħol huma wkoll avvenimenti ta 'Excel.

L-avvenimenti jistgħu jiġu konnessi ma 'worksheet Excel, ma' charts, ktieb tax-xogħol, jew direttament mal-applikazzjoni Excel innifsu. Il-programmaturi jistgħu joħolqu kodiċi VBA li se jiġi esegwit awtomatikament meta jseħħ avveniment.

Pereżempju, biex ikollok makro run kull darba li l-utent jaqleb worksheet f'workbook Excel, inti toħloq kodiċi VBA li se jibda kull darba li jseħħ l-avveniment SheetActivate ktieb tax-xogħol.

U jekk trid li l-makro taħdem kull darba li tmur fuq worksheet speċifika (per eżempju, Sheet1), allura l-kodiċi VBA għandu jkun assoċjat mal-avveniment jattiva għal din il-folja.

Il-kodiċi VBA maħsub biex jimmaniġġja l-avvenimenti ta 'Excel għandu jitqiegħed fil-worksheet jew l-oġġett tal-workbook xieraq fit-tieqa tal-editur VBA (l-editur jista' jinfetaħ billi tikklikkja Alt + F11). Pereżempju, kodiċi li għandu jiġi esegwit kull darba li jseħħ ċertu avveniment fil-livell tal-worksheet għandu jitqiegħed fit-tieqa tal-kodiċi għal dik il-worksheet. Dan jidher fil-figura:

Fl-editur Visual Basic, tista 'tara s-sett ta' l-avvenimenti kollha ta 'Excel disponibbli fil-ktieb tax-xogħol, worksheet, jew livell ta' chart. Iftaħ it-tieqa tal-kodiċi għall-oġġett magħżul u agħżel it-tip ta 'oġġett mill-menu drop-down tax-xellug fin-naħa ta' fuq tat-tieqa. Il-menu drop-down tal-lemin fin-naħa ta 'fuq tat-tieqa se juri l-avvenimenti definiti għal dan l-oġġett. Il-figura hawn taħt turi lista ta 'avvenimenti assoċjati ma' worksheet ta 'Excel:

Avvenimenti f'Excel

Ikklikkja fuq l-avveniment mixtieq fil-menu drop-down tal-lemin, u proċedura tiddaħħal awtomatikament fit-tieqa tal-kodiċi għal dan l-oġġett sotto. fil-kap tal-proċedura sotto Excel awtomatikament idaħħal l-argumenti meħtieġa (jekk hemm). Kulma jibqa 'huwa li żżid il-kodiċi VBA biex tiddetermina liema azzjonijiet għandha twettaq il-proċedura meta jinstab l-avveniment mixtieq.

Eżempju

Fl-eżempju li ġej, kull darba li tintgħażel ċellula B1 fuq il-worksheet Sheet1 tidher kaxxa tal-messaġġ.

Biex twettaq din l-azzjoni, għandna bżonn nużaw l-avveniment tal-worksheet Selection_Change, li sseħħ kull darba li l-għażla ta 'ċellula jew firxa ta' ċelloli tinbidel. Funzjoni Selection_Change jirċievi bħala argument Mira oġġett -. Dan huwa kif nafu liema firxa ta 'ċelluli ġiet magħżula.

avveniment Selection_Change iseħħ bi kwalunkwe għażla ġdida. Imma neħtieġu li s-sett ta 'azzjonijiet jiġu esegwiti biss meta tintgħażel iċ-ċellula B1. Biex tagħmel dan, aħna se nsegwu l-avveniment biss fil-medda speċifikata Mira. Kif tiġi implimentata fil-kodiċi tal-programm muri hawn taħt:

'Kodiċi biex turi kaxxa ta' messaġġ meta tintgħażel iċ-ċellula B1 'fuq il-worksheet attwali. Private Sub Worksheet_SelectionChange(ByVal Target As Range) 'Iċċekkja jekk iċ-ċellula B1 tintgħażel Jekk Target.Count = 1 U Target.Row = 1 U Target.Column = 2 Imbagħad 'Jekk tintgħażel iċ-ċellula B1, imbagħad agħmel dan MsgBox li ġej "Int għandek għażel ċellula B1" Tmiem Jekk Tmiem Sub

Ħalli Irrispondi