В link: / excelribbon-Worksheet_Events [предыдущий совет] вы узнали, как вы можете обнаруживать различные события, которые вы можете перехватить и запрограммировать в своих макросах. Excel также позволяет улавливать различные события на уровне книги. Вы можете найти список этих событий почти так же, как и для рабочих листов:

  1. Нажмите Alt + F11, чтобы открыть редактор VBA.

  2. В окне Project Explorer (верхний левый угол редактора VBA) найдите проект (книгу), над которым вы работаете.

  3. При необходимости разверните проект, щелкнув знак плюса слева от имени проекта. Вы должны увидеть все листы в указанном проекте.

  4. Дважды щелкните элемент ThisWorkbook. Должно появиться окно кода для книги.

  5. В верхней части окна кода книги находятся два раскрывающихся списка. В раскрывающемся списке слева выберите Книга.

На этом этапе в правом раскрывающемся списке содержатся все события, которые вы можете «перехватить» для книги. Доступные события могут отличаться в зависимости от вашей версии Excel. Есть более 25 различных событий, слишком много, чтобы перечислять здесь.

Названия событий должны быть достаточно информативными, чтобы вы могли понять, что запускает каждое из них. Обратите внимание, что некоторые события начинаются со слова «Лист» и дублируют имена событий рабочего листа, подробно описанные в совете, упомянутом выше. Эти события, поскольку они находятся на уровне книги, применяются к книге в целом, даже если они инициируются событиями на листе.

Например, если вы решите перехватить событие SheetActivate, макрос будет запускаться при активации любого рабочего листа в книге.

Сравните это с событием Activate на уровне рабочего листа, которое активируется только тогда, когда этот конкретный рабочий лист активирован.

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

_Примечание: _

Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.

link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

ExcelTips — ваш источник экономичного обучения Microsoft Excel.

Этот совет (9546) применим к Microsoft Excel 2007, 2010, 2013, 2016, 2019 и Excel в Office 365. Вы можете найти версию этого совета для старого интерфейса меню Excel здесь:

link: / excel-Workbook_Events [События рабочей книги].