Какие события я могу использовать в Excel - PullRequest
7 голосов
/ 14 июля 2010

Где я могу найти список событий в Excel?Я хочу написать макросы в VBA на их основе.Я уже знаю о Worksheet_BeforeDoubleClick, но я более или менее только что обнаружил, что случайно / запомнили, что он использовался в Access.

Кто-нибудь имеет полный список или знает, где я могу найти одно из различных событий в Excel

Ответы [ 3 ]

5 голосов
/ 14 июля 2010

Вот обзор объектной модели Excel, который можно использовать для перехода к элементам каждой модели.

http://msdn.microsoft.com/en-us/library/wss56bz7(VS.80).aspx

Вы бы использовали это, чтобы добраться до:

http://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel.application_members.aspx

Прокрутите вниз для событий.

4 голосов
/ 15 июля 2010
3 голосов
/ 15 июля 2010

Другой способ найти их - открыть VBE (Alt + F11), щелкнуть по модулю класса объекта (например, ThisWorkbook или Sheet1) и использовать раскрывающиеся списки в верхней части панели кода. Например, если вы выберете ThisWorkbook из выпадающего списка слева, выпадающий справа будет содержать все доступные вам события.

Для объектов, которые не являются Workbook или Worksheet (Application, QueryTable и т. Д.), Создайте в своем проекте модуль пользовательского класса (Insert - Class Module) и введите (например)

Public WithEvents qt As QueryTable

Теперь в левом раскрывающемся списке появится «qt», а в правом - все события для QueryTable. Вы заметите, что Intellisense показывает только ограниченное количество объектов, когда вы включаете WithEvents. Это единственные объекты, которые выставили события. Так что вы не можете набрать

Public WithEvents rng As Range

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...