Листинг 3.96. Код в стандартном модуле

Sub CreateCustomContextMenu()

' Удаление одноименного меню

Call DeleteCustomContextMenu

' Создание меню

With CommandBars.Add(«MyContextMenu», msoBarPopup, ,

True).Controls

' Создание и настройка кнопок меню

' Кнопка «Числовой формат»

With .Add(msoControlButton)

.Caption = «&Числовой формат...»

.OnAction = «ShowFormatNumber»

.FaceId = 1554

End With

' Кнопка «Выравнивание»

With .Add(msoControlButton)

.Caption = «&Выравнивание...»

.OnAction = «ShowFormatAlignment»

.FaceId = 217

End With

' Кнопка «Шрифт»

With .Add(msoControlButton)

.Caption = «&Шрифт...»

.OnAction = «ShowFormatFont»

.FaceId = 291

End With

' Кнопка «Границы»

With .Add(msoControlButton)

.Caption = «&Границы...»

.OnAction = «ShowFormatBorder»

.FaceId = 149

.BeginGroup = True

End With

' Кнопка «Узор»

With .Add(msoControlButton)

.Caption = «&Узор...»

.OnAction = «ShowFormatPatterns»

.FaceId = 1550

End With

' Кнопка «Зашита»

With .Add(msoControlButton)

.Caption = «&Защита...»

.OnAction = «ShowFormatProtection»

.FaceId = 2654

End With

End With

End Sub

Sub DeleteCustomContextMenu()

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

On Error Resume Next

CommandBars(«MyContextMenu»).Delete

End Sub

Sub ShowFormatNumber()

' Число

Application.Dialogs(xlDialogFormatNumber).Show

End Sub

Sub ShowFormatAlignment()

' Выравнивание

Application.Dialogs(xlDialogAlignment).Show

End Sub

Sub ShowFormatFont()

' Шрифт

Application.Dialogs(xlDialogFormatFont).Show

End Sub

Sub ShowFormatBorder()

' Граница

Application.Dialogs(xlDialogBorder).Show

End Sub

Sub ShowFormatPatterns()

' Вид (Узор)

Application.Dialogs(xlDialogPatterns).Show

End Sub

Sub ShowFormatProtection()

' Защита

Application.Dialogs(xlDialogCellProtection).Show

End Sub

После написания данного кода будут сформированы макросы создания пользовательского контекстного меню (CreateCustomContextMenu) и его удаления (DeleteCustomContextMenu), а также макросы, привязанные к командам созданного меню и предназначенные для вызова соответствующих вкладок диалогового окна Формат ячеек.

После выполнения макроса CreateCustomContextMenu будет сформировано контекстное меню, изображенное на рис. 3.36.

Рис. 3.36. Пользовательское контекстное меню

Это меню будет вызываться при щелчке правой кнопкой мыши на любой ячейке диапазона A2:D5. С помощью его команд осуществляется быстрый переход к соответствующей вкладке окна форматирования активной ячейки.

<p>Просмотр содержимого папки</p>

В процессе работы может возникать необходимость просмотра содержимого той или иной папки (например, для поиска требуемого файла). Чтобы ускорить данный процесс и не запускать для этой цели Проводник, рекомендуется воспользоваться макросом, код которого приведен в листинге 3.97.

Перейти на страницу:

Похожие книги