Найти тему
VBA Excel с нуля

VBA Excel № 96. Браузер объектов (Object Browser). Поиск объектов и событий.

Оглавление
Скриншот с моего ноутбука
Скриншот с моего ноутбука

Object Browser (браузер объектов) в среде программирования VBA представляет собой хороший инструмент, который открывает очень неплохие возможности для получения информации о объектах, их свойствах и методах. Этот инструмент также обеспечивает удобный способ идентификации объектов, поддерживающих определенные события. В данной статье уважаемые читатели, давайте рассмотрим, как использовать Object Browser более эффективно.

Шаг 1: Активация VBE и открытие Object Browser

Для начала работы с Object Browser, активируйте VBE (Visual Basic Editor) и нажмите клавишу F2 (или Fn+F2, если у вас например – ноутбук), чтобы отобразить окно Object Browser.

Скриншот с моего ноутбука
Скриншот с моего ноутбука

Шаг 2: Удостоверьтесь, что выбран пункт <All Libraries> (все библиотеки), чтобы охватить все доступные библиотеки VBA.

Скриншот с моего ноутбука
Скриншот с моего ноутбука

Шаг 3: Поиск объектов, поддерживающих конкретное событие

Предположим, у нас есть задача найти все объекты, поддерживающие событие MouseMove (перемещение мыши). Введите "MouseMove" в поле поиска и щелкните на значке с изображением бинокля.

Скриншот с моего ноутбука
Скриншот с моего ноутбука

Шаг 4: Просмотр информации о событии

Object Browser отобразит список подходящих объектов, а события будут выделены значком в виде небольшой желтой молнии. Щелкните на нужном событии (на том же, например, MouseMove), чтобы просмотреть информацию о синтаксисе этого события. Информация отобразится на панели состояния в нижней части списка.

Скриншот с моего ноутбука
Скриншот с моего ноутбука

Расширение функционала:

Object Browser также предоставляет возможность не только просматривать информацию о событиях, но и изучать свойства и методы объектов. Например, вы можете искать все свойства объекта, начиная с определенной буквы (или группой букв, я набрал «Mous»), для более быстрого и точного поиска.

Скриншот с моего ноутбука
Скриншот с моего ноутбука

Ну и напоследок давайте разберём, что же было отображено на панели состояния в нижней части списка:

Скриншот с моего ноутбука
Скриншот с моего ноутбука

Строка Event MouseMove(Button As Long, Shift As Long, x As Long, y As Long) является объявлением события MouseMove в объекте VBA класса или формы. Давайте разберем каждую часть этой строки:

  1. - Event: Ключевое слово, используемое для объявления события в VBA. Оно указывает, что следующая процедура представляет собой обработчик события, которое может произойти в объекте.
  2. - MouseMove: Название события. В данном случае, это событие MouseMove, которое возникает, когда происходит движение мыши внутри объекта, для которого объявляется это событие.
  3. - (Button As Long, Shift As Long, x As Long, y As Long): Эти параметры представляют информацию о событии MouseMove и предоставляют контекст этого события:
  • - Button: Передает информацию о состоянии кнопок мыши в виде длинного целого числа (Long).
  • - Shift: Содержит информацию о состоянии клавиш-модификаторов (Shift, Ctrl, Alt) в виде длинного целого числа (Long).
  • - X: Представляет горизонтальную координату, где произошло событие MouseMove, в виде длинного целого числа (Long).
  • - Y: Представляет вертикальную координату, где произошло событие MouseMove, в виде длинного целого числа (Long).

Короче говоря, эта строка о том, что в объекте (например, форме или классе) существует событие MouseMove, и при его возникновении должна выполняться процедура с указанными параметрами, предоставляя информацию о текущем состоянии мыши и её координатах внутри объекта.

Подводя итог, можно прийти к заключению, что использование Object Browser может дать вам возможность более глубокого и детального изучения объектов, их свойств и событий.