Події в Excel - Microsoft Excel для початківців
Термін "Подія Excel " використовується для позначення певних дій, що здійснюються користувачем в Excel. Наприклад, коли користувач перемикає аркуш робочої книги – це подія. Введення даних у комірку або збереження робочої книги – це також події Excel.
Події можуть бути пов'язані з робочим листом Excel, з діаграмами, робочою книгою або безпосередньо з програмою Excel. Програмісти можуть створювати код VBA, який виконуватиметься автоматично при настанні тієї чи іншої події.
Наприклад, щоб макрос запускався кожного разу, коли користувач перемикає робочий лист у книзі Excel, потрібно створити код VBA, який буде виконуватися щоразу при виникненні подіїSheetActivate робочої книги.
А якщо потрібно, щоб макрос запускався щоразу при переході на якийсь певний робочий лист (наприклад,лист1 ), то код VBA повинен бути пов'язаний з подієюActivate для цього листа.


Клацніть по потрібній події в правому меню, і у вікно коду для цього об'єкта буде автоматично вставлена процедураSub. У заголовку процедуриSub Excel автоматично вставляє необхідні аргументи (якщо є). Залишається тільки додати код VBA, щоб визначити, які дії процедура повинна виконати, коли потрібна подія буде виявлена.
У наступному прикладі щоразу при виборі коміркиB1 на робочому аркушіАркуш1 з'являється вікно з повідомленням.
Щоб виконати цю дію, нам потрібно використовувати подію робочого аркушаSelection_Change, яка виникає щоразу, коли змінюється виділення осередку чи діапазону осередків. ФункціяSelection_Change отримує як аргументTarget об'єктRange. Так ми дізнаємося, який діапазон осередків було виділено.
ПодіяSelection_Change відбувається за будь-якого нового виділення. Але нам потрібно, щоб набір дій був виконаний лише при виділенні осередкуB1. Для цього відстежуватимемо подію лише в заданому діапазоніTarget. Як це реалізовано в програмному коді, наведеному нижче: