Книга: VBA для чайников
Работа с определенными кнопками
Работа с определенными кнопками
Если вам необходимо настроить параметры определенной кнопки, вам необходимо идентифицировать эту кнопку в VBA-коде.
Вы можете указать кнопку одним из следующих способов.
* Используя индексный номер кнопке в коллекции Controls объектов панели инструментов, к которой она относится. Индексный номер кнопки соответствует ее расположению на панели инструментов; при этом кнопке, расположенной в крайнем левом (или в крайнем верхнем) углу, соответствует индексный номер 1. Ниже приведен пример подобного обращения к объекту:
CommandBars ("Bar None").Controls ( 3)
Проблема состоит в том, что Office позволяет пользователям перетаскивать кнопки по панели инструментов, поэтому ничто не гарантирует, что вы обращаетесь именно к той кнопке, которая вам необходима.
* Использование свойства Caption кнопки. Вы можете ввести любой заголовок, используя пользовательский интерфейс Office. Выберите команду Сервис=Настройка, перейдите на вкладку Команды появившегося диалогового окна Настройка. Щелкните на интересующей вас кнопке правой кнопкой мыши, чтобы увидеть имя кнопки. Следующая команда ссыпается на кнопку, свойство Caption которой равно "Угадай мой вес".
CommandBars("BarNone").Controls("Угадай мой вес")
Вы можете определить заголовок прямо в программном коде, но вам все равно придется указать кнопку одним из других способов.
* Используя метод FindControl коллекции CommandBars для обнаружения кнопки. Этот метод обнаруживает кнопки по нескольким критериям. Наиболее полезным оказывается использование свойства Tag. Однако, чтобы оно сработало, вам сначала необходимо присвоить этому свойству уникальное значение, используя инструкцию, подобную приведенной ниже.
CommandBars ("Bar None").Controls (,,"Tag0l")
После этого, когда вам необходимо обратить к кнопке из программного кода, вы можете использовать метод FindControl для получения ссылки на кнопку, например, с помощью следующей инструкции:
CommandBars.FindControl(, , "Tag0l")
В этом примере запятые относятся к необязательным параметрам метода FindControl, которые не потребуются вам при нахождении элементов управления (в нашем случае, кнопки) по свойству Tag.
В приведенной ниже таблице перечислены наиболее полезные свойства и методы, позволяющие настраивать кнопки панелей инструментов с помощью VBA.
Свойство или метод |
Эффект |
Доступные параметры (только для свойств) |
Свойство Enabled |
Определяет, включена ли кнопка и доступна ли она щелчком мышью либо она отключена, а значит, затемена |
True или False |
Свойство Visible |
Определяет, видна ли кнопка |
True или False |
Свойство State |
Определяет, кажется ли кнопка "нажатой" |
MsoButtonUp (обычный вид кнопки); msoButtori Down (кнопка заблокирована в нажатом состоянии); msoButtonMi xed (кнопка имеет вид "нажимаемой") |
Метод CopyFace |
Копирует изображение с указанной кнопки в буфер обмена. Для кнопки, изображение которой изменяется должным образом, создайте панель инструментов, содержащую кнопки с нужным изображением, но не выполняющие никаких реальных действий. Затем скройте эту панель инструментов. Когда придет время изменить изображение на "настоящей" кнопке, используйте метод Copy Face для копирования необходимого изображения с соответствующей кнопки на скрытой панели инструментов. Затем используйте метод Paste Face для вставки изображения на кнопку |
|
Метод PasteFace |
Размещение на кнопке изображения, уже помещенного в буфер обмена |
- Привязка сценариев к кнопкам
- Работа с кнопками
- Практическая работа 53. Запуск Access. Работа с объектами базы данных
- Лекция 15. Работа с базами данных
- Работа с ресурсами локальной сети
- Эффективная работа с временными файлами сортировки
- Ускоренная работа с индексами
- HR-брендинг: Работа с поколением Y, новые инструменты для коммуникации, развитие корпоративной культуры и еще 9 эффектив...
- Безопасная работа с внешними таблицами
- Работа со строками
- 9.2. Работа прокси-сервера
- 3. Заработок для фотографов: заработать на фото – сайты фотобанков