Kак создать одно событие для всех рабочих листов, в т.ч. и новых- Visual Basic(Бейсик)

Если для всех рабочих листов, в том числе и новых, необходимо использовать одно и тоже событие, то нет необходимости прописывать его в модуле каждого рабочего листа, достаточно использовать аналогичное событие рабочей книги. Например, если Вы используете событие рабочего листа

Worksheet_Change(ByVal Target As Excel.Range)
то его можно заменить на событие рабочей книги

Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Excel.Range) 

Для того, чтобы создать событие рабочей книги необходимо перейти в модуль книги ThisWorkbook (ЭтаКнига). Это можно сделать непосредственно в редакторе VBA или же навести курсор мышки на изображение рабочего листа, которое отображается перед меню Файл. Затем кликнуть правой кнопкой мышки и в появившемся контекстном меню выбрать пункт Исходный текст. После чего, в окне программы [F7] в первом поле со списком выбрать Workbook, а во втором поле выбрать нужное событие.

Leave a Comment