Мегаобучалка Главная | О нас | Обратная связь


Пример создания/удаления меню



2015-11-20 1121 Обсуждений (0)
Пример создания/удаления меню 0.00 из 5.00 0 оценок




Теперь создадим меню Вставка знака, которое расположим в самом конце строки меню рабочего листа (после меню Справка).

Рис. 10‑17. Добавление меню Вставка знака

Листинг программы:

Sub ДобавлениеМеню()

Set myMenuBar = CommandBars("Worksheet Menu bar")

'1. Добавляем вложенное меню:

Set newMenu = myMenuBar.Controls.Add(Type:=msoControlPopup, _

Temporary:=True)

'2. Задаем текст надписи:

newMenu.Caption = "Вставка знака"

'3. Во вложенное меню добавляем кнопку:

Set ctrl1 = newMenu.Controls _

.Add(Type:=msoControlButton, ID:=1)

'4. На кнопке должна быть только надпись:

ctrl1.Style = msoButtonCaption

'5. Добавляем надпись:

ctrl1.Caption = "Плюс в кружочке"

'6. Создаем всплывающую подсказку:

ctrl1.TooltipText = "Вставка специального символа"

'7. При щелчке по кнопке выполняется процедура Символ:

ctrl1.OnAction = "Символ"

End Sub

Задание: введите данный код в книгу Плюс в кружочке.xls и запустите его. Убедитесь, что меню Вставка знака создана.

Удаление меню

Для удаления меню воспользуемся следующей программой:

Sub УдалениеМеню()

Set myMenuBar = CommandBars("Worksheet Menu bar")

For Each Меню In myMenuBar.Controls

If Меню.Caption = "Вставка знака" Then

Меню.Delete

Exit For

End If

Next

End Sub

Задание: введите данный код в книгу Плюс в кружочке.xls и запустите его. Убедитесь, что меню Вставка знака удалено.

Обработка событий объектов Workbook и Worksheet

События имеются не только у элементов управления. Объекты, рассмотренные в главе 1, также обладают своими событиями.

События объекта Workbook

События рабочей книги возникают в случае изменений самой книги, её листов, надстроек и сводных таблиц. Рассмотрим некоторые события объекта Workbook.

Событие Open

Предположим, что загрузка панели инструментов Вставка знака должна осуществляться при открытии книги Плюс в кружочке.xls.

Чтобы связать это событие с открытием книги выполните следующие действия:

1. В окне проекта Плюс в кружочке.xls (в редакторе VBA) щелкните ThisWorkbook(Рис. 10‑2Рис. 11‑1).

1. Объект ThisWorkbook
2. Список объектов
3. Список процедур

Рис. 11‑1.

2. В списке объектов выберите объект Workbook.

3. В списке процедур выберите событие Open. На экране появится первая последняя строки процедуры обработки этого события Workbook_Open.

4. Вставьте в неё нужный фрагмент кода (код процедуры СозданиеПанелиИнструментов без 1-й и последней строки).

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

Событие BeforeClose

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

Задания:

1. Создайте код обработки события BeforeClose, сохраните книгу и закройте её. Убедитесь, что панель инструментов Вставка знака удалена;

2. В рабочей книге Плюс в кружочке-Меню.xls напишите процедуры обработки событий OpenиBeforeClose, которые при открытии книги добавляют меню Вставка знака, а при закрытии удаляют его.

Событие SheetActivate

Рассмотрим ещё одно часто используемое событие SheetActivate. Оно наступает при активизации любого листа рабочей книги. Следующий пример демонстрирует обработку этого события (вывод на экран названия активизированного листа):

Private Sub Workbook_SheetActivate(ByVal Sh As Object)MsgBox Sh.NameEnd Sub

Задание:

Создайте код обработки события SheetActivate и протестируйте выполнение этой программы (для этого перейдите в Excel и щелкните по ярлычкам листов).



2015-11-20 1121 Обсуждений (0)
Пример создания/удаления меню 0.00 из 5.00 0 оценок









Обсуждение в статье: Пример создания/удаления меню

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (1121)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.006 сек.)