Как программно создать кнопку на панели инструментов, которая будет действовать как гиперссылка?
Категория: Basic
2012-08-14 14:45:12
Для того, чтобы создать кнопку - гиперссылку, можно использовать нижеприведённый код, который желательно разместить в стандартном модуле.
code: #vba
Private Sub CreateButtonHyperlink() With Application.CommandBars(1).Controls.Add(Type:=msoControlButton) .FaceId = 2083 .OnAction = "MyHyperlink" .Caption = "Microsoft Excel" .TooltipText = "Посетить сайт" .Style = msoButtonIconAndCaption End With End Sub Private Sub MyHyperlink() On Error Resume Next ThisWorkbook.FollowHyperlink _ Address:="http://samplecode.ru", NewWindow:=True End Sub
Актуально только для MS Excel 2000, XP:
В этой версии, решить поставленную задачу, вполне можно и без использования макросов, но если создание такой кнопки это только часть задачи, где применение макросов действительно имеет смысл, то:
code: #vba
Private Sub CreateButtonHyperlink_XP() With Application.CommandBars(1).Controls.Add(Type:=msoControlButton) .FaceId = 2083 .Caption = "Microsoft Excel" .Style = msoButtonIconAndCaption .TooltipText = "http://www.msoffice.nm.ru" .HyperlinkType = msoCommandBarButtonHyperlinkOpen End With End Sub
- В качестве примера выбрана стандартная панель инструментов ("Строка меню листа")
- Вместо номера/индекса панели Вы можете использовать её имя, и заменить (1) на ("Worksheet Menu Bar")
- При использовании этих примеров убедитесь, что панель инструментов не защищена
Поделиться: