Элементы управления activex в excel
Microsoft Excel
трюки • приёмы • решения
Режим конструктора и элементы ActiveX в VBA Excel
В наших статьях мы подробно рассмотрим практические примеры, связанные с использованием программирования, которое заложено в Microsoft Office. Оно основывается на языке VBA, название которого в полном виде выглядит так Visual Basic for Application. Учитывая, что все рассматриваемые разработки будут использовать VBA, наша первоочередная задача познакомиться сданным языком.
Примеры этой темы предназначены для категории читателей, которая либо с VBA не встречалась, либо это знакомство было весьма поверхностным. Все последующие главы будут полностью посвящены рассмотрению практических офисных задач, и, таким образом, эта статья является для них базовой.
Рис. 1.4. Закладка Основные окна Параметры Excel
Предполагается, что читатель хотя бы в незначительной степени знаком с чисто пользовательскими возможностями Microsoft Excel прошлых версий. Важно отметить, что наибольший эффект будет наблюдаться, если запустить Microsoft Excel параллельно с чтением наших статей и выполнять все описанные разработки на компьютере. При рассмотрении примеров на протяжении всего изучения нам понадобятся элементы ActiveX, которые по-другому можно назвать Элементы управления.
И в качестве первого шага необходимо в окне, показанном на рис. 1.2, щелкнуть кнопкой Параметры Excel. В результате перед вами откроется новое окно с набором закладок. Здесь на закладке Основные следует сделать установку для отображения на ленте вкладки Разработчик, что реализуется с помощью флажка Показывать вкладку «Разработчик» на ленте (рис. 1.4).
В Microsoft Excel элементы ActiveX можно размещать и на пользовательских формах, и на самих рабочих листах (на верхнем графическом слое, где располагаются рисунки, диаграммы и другие объекты). Часто вставка нескольких элементов ActiveX значительно упрощает работу с данными на рабочем листе. Все элементы управления делятся на две группы: элементы управления формами и элементы управления ActiveX. Оба набора элементов управления имеют свои преимущества и недостатки. В общем случае элементы управления формами проще в применении, но зато элементы ActiveX являются более гибкими. В наших примерах мы будем использовать исключительно элементы ActiveX.
В результате окно приложения Microsoft Excel дополнится новыми пиктограммами, которые нам потребуются в дальнейшем (рис. 1.5). Среди тех, которыми мы будем активно пользоваться на протяжении всей книги, отметим пиктограмму с надписью Вставить. С се помощью на рабочем листе можно размещать элементы ActiveX, которые существенно дополняют функциональность книг Microsoft Excel. Они типичны для различных приложений Windows (речь идет о кнопках, полосах прокрутки, текстовых окнах, переключателях, списках и т. д.). Кроме пиктограммы Вставить мы будем активно пользоваться и другими присутствующими на ленте Режим конструктора, Свойства, Visual Basic и Макросы.
Перед тем как начать какие-либо действия с тем или иным элементом ActiveX, его необходимо поместить на рабочий лист. Это легко выполнить, если воспользоваться пиктограммой Вставить. На рис. 1.6 показано размещение на рабочем листе элемента ActiveX Кнопка.
Рис. 1.5. Отображение вкладки Разработчик на ленте
При наведении курсора мыши на пиктограмму элемента ActiveX Кнопка в качестве подсказки появляется еще один вариант его названия: элемент управления «Кнопка». Далее по тексту мы будем использовать оба варианта названия — элементы ActiveX и элементы управления.
Для того чтобы перенести элемент ActiveX на рабочий лист, необходимо щелкнуть на панели инструментов на его пиктограмме левой кнопкой мыши и далее переместить курсор мыши на рабочий лист. Курсор мыши примет вид, аналогичный математическому знаку «плюс». Теперь следует нажать левую кнопку мыши и, не отпуская ее, переместить мышь вправо и вниз, а затем отпустить ее левую кнопку. В результате на рабочем листе мы увидим изображение появившегося элемента ActiveX, окруженного маркерами (рис. 1.6).
Рис. 1.6. Размещение кнопки на рабочем листе в режиме конструктора
После размещения элемента ActiveX на рабочем листе активизируется кнопка Режим конструктора, которая позволяет пользователю далее работать в одном из двух режимов. Один из них так и называется режим конструктора. В этом случае можно работать с элементами ActiveX для создания необходимого интерфейса на рабочем листе. Также в этом режиме пользователю предоставляется возможность создавать программные разработки.
Появление маркеров (см. рис. 1.6), окружающих элемент ActiveX, как раз и является признаком того, что мы работаем в режиме конструктора (кнопка Режим конструктора в этом случае выглядит нажатой). На начальном этапе создания разработки работа в режиме конструктора сводится к размещению элементов управления на рабочем листе и изменению их свойств. Далее производится программирование различных событий, связанных с элементами управления, листами и книгой в целом.
Важно отметить, что после размещения элемента ActiveX на рабочем листе, в нашей книге (можно даже сказать — на данном листе книги) появился новый элемент, который фактически представляет собой «программный» объект. Аналогичным образом на рабочих листах книг Excel можно размещать и другие элементы ActiveX.
Рис. 1.7. Вид рабочего листа при выходе из режима конструктора
Другой режим можно назвать режимом выполнения или режимом работы (какого-то однозначно принятого названия не существует). Чтобы перейти в этот режим (то есть выйти из режима конструктора), необходимо отжать кнопку Режим конструктора (рис. 1.7). После этого в нашем случае можно просто пощелкать кнопкой, которую мы создали на рабочем листе (функциональные действия, которые можно обеспечить в этом случае, мы рассмотрим в дальнейшем). Далее опять вернемся в режим конструктора. С помощью маркеров, окружающих кнопку, можно легко изменить се размеры. Также с помощью мыши можно перемещать созданную кнопку по рабочему листу.
Источник: excelexpert.ru
Добавление и регистрация элемента ActiveX
Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).
В дополнение к различным элементам управления формы на компьютере находятся многие элементы управления ActiveX, которые были установлены в Excel и другие программы, например элемент управления Calendar 12,0 и проигрыватель Windows Media. При установке новых элементов ActiveX программа установки для элементов управления, как правило, регистрирует каждый элемент управления на компьютере, что делает его доступным для использования в Excel. Если элемент управления не отображается в списке, его необходимо зарегистрировать вручную.
Не все элементы ActiveX можно использовать непосредственно на листах; Некоторые из них можно использовать только в пользовательской форме Microsoft Visual Basic для приложений (VBA). При работе с этими элементами управления в Excel отображается сообщение не удается вставить объект , если вы попытаетесь добавить их на лист.
Чтобы можно было работать с элементами управления ActiveX, необходимо включить вкладку Разработчик на ленте. Дополнительные сведения см. в статье Отображение вкладки “Разработчик”.
На вкладке разработчик в группе элементы управления нажмите кнопку Вставить, а затем в разделе элементы ActiveXвыберите элемент управления или щелкните другие элементы управления , чтобы просмотреть все доступные элементы ActiveX, а затем выберите элемент управления.
Щелкните на листе место, где должен отображаться элемент ActiveX.
Чтобы изменить элемент управления, убедитесь, что выбран режим конструктора. На вкладке Разработчик в группе Элементы управления нажмите кнопку Режим конструктора.
Чтобы задать свойства элемента управления, на вкладке разработчик в группе элементы управления нажмите кнопку Свойства .
Совет: Можно также щелкнуть элемент управления правой кнопкой мыши и выбрать пункт Свойства.
Откроется диалоговое окно Свойства. Для получения дополнительных сведений о каждом свойстве выберите свойство и нажмите клавишу F1, чтобы отобразить соответствующий раздел справка по Visual Basic. Можно также ввести имя свойства в поле Поиск справки Visual Basic.
Щелкните элемент ActiveX, который вы хотите зарегистрировать.
Убедитесь в том, что вы используете режим конструктора. На вкладке Разработчик в группе Элементы управления нажмите кнопку Режим конструктора .
На вкладке Разработчик в группе Элементы управления нажмите кнопку Вставить и в разделе Элементы ActiveX нажмите кнопку Другие элементы управления.
В нижней части диалогового окна другие элементы управления выберите пункт Зарегистрировать настраиваемый.
В диалоговом окне Регистрация пользовательского элемента управления найдите папку, содержащую управляющий файл (с расширением. ocx) или файл динамической библиотеки (расширение имени. dll) для элемента управления, который нужно зарегистрировать.
Выберите файл для элемента управления и нажмите кнопку Открыть.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.
Источник: support.microsoft.com
Элементы управления activex в excel
Элементы ActiveX можно использовать на формах листа (без кода VBA или с ним), а также на пользовательских формах VBA. Их рекомендуется применять, если требуются более гибкие возможности, чем у элементов управления формы. Многочисленные свойства элементов ActiveX позволяют настраивать их внешний вид, поведение, шрифты и другие характеристики.
Можно также управлять событиями, которые происходят при взаимодействии с элементом ActiveX. Например, можно выполнять различные действия в зависимости от того, какой элемент выбирается из списка, или отправлять запрос базе данных для заполнения поля со списком элементами при нажатии кнопки. Можно также создавать макросы, которые реагируют на события, связанные с элементами ActiveX. При выборе элемента управления будет выполняться код VBA, обрабатывающий все назначенные ему события.
На компьютере находятся многочисленные элементы ActiveX, установленные приложением Excel и другими программами, такими как Calendar Control 12.0 и проигрыватель Windows Media.
Важно. Не все элементы ActiveX можно использовать непосредственно на листах; некоторые из них можно применять только в пользовательских формах Visual Basic для приложений (VBA). При попытке добавить такие элементы управления на лист приложение Excel отображает сообщение “Вставка объекта неосуществима”.
Тем не менее элементы ActiveX невозможно добавить на листы диаграмм (с помощью пользовательского интерфейса) или на листы макросов XLM. Кроме того, невозможно назначить макрос, который будет выполняться непосредственно элементом ActiveX, как для элемента управления формы.
Обзор элементов ActiveX
Изображение | Название | Пример | Описание |
---|---|---|---|
![]() |
Флажок | Включает или отключает значение, что соответствует выбору противоположных действий. На листе или в группе можно одновременно установить несколько флажков. Флажок может иметь одно из трех состояний: установлен (значение включено), снят (значение отключено) и смешенное состояние, то есть сочетание состояний “включено” и “отключено” (если поддерживается выбор нескольких элементов). | |
![]() |
Текстовое поле | Представляет собой прямоугольник, в котором можно просматривать, вводить и изменять текст или данные, связанные с ячейкой. Текстовое поле также может быть статическим и содержать данные, предназначенные только для чтения. | |
![]() |
Кнопка | Запуск макроса, который выполняет действие при нажатии кнопки. | |
![]() |
Переключатель | Позволяет выбрать одно из ограниченного набора взаимоисключающих значений. Переключатели обычно находятся в группе или рамке. Переключатель может иметь одно из трех состояний: установлен (значение включено), снят (значение отключено) и смешенное состояние, то есть сочетание состояний “включено” и “отключено” (если поддерживается выбор нескольких элементов). | |
![]() |
Список | ||
![]() |
Поле со списком | Представляет собой сочетание текстового поля и раскрывающегося списка. Поле со списком компактнее обычного списка, однако чтобы отобразить список элементов, пользователь должен щелкнуть стрелку вниз. Поле со списком следует использовать, когда требуется обеспечить возможность ввода элементов в список и выбора из него одного элемента. В этом элементе управления отображается текущее значение независимо от того, каким образом оно было введено. | |
![]() |
Выключатель | Указывает на состояние (да/нет) или режим (вкл./вкл.). При нажатии кнопки она меняет свое состояние на противоположное. | |
![]() |
Счетчик | Позволяет увеличивать и уменьшать значение, например числовое значение, время или дату. Чтобы увеличить значение, щелкните стрелку вверх, чтобы уменьшить — стрелку вниз. Как правило, пользователь также может вводить текст в связанную ячейку или текстовое поле. | |
![]() |
Полоса прокрутки | Используется для прокрутки диапазона значений с помощью кнопок со стрелками или путем перетаскивания ползунка полосы прокрутки. Можно перемещаться по странице значений (с заранее заданным интервалом), щелкая область между ползунком и одной из кнопок со стрелками для прокрутки. Как правило, пользователь также может вводить текст непосредственно в связанную ячейку или текстовое поле. | |
![]() |
Подпись | Указывает назначение ячейки или текстового поля либо содержит описание (заголовки, подписи, рисунки) или краткие инструкции. | |
![]() |
Изображение | Выводит изображение, например точечный рисунок , JPEG или GIF . | |
![]() |
Рамка |