Вопрос

Как создать панель инструментов для Excel с использованием документа XLA?

Это было полезно?

Решение

Чтобы создать панель инструментов, в событии onload вы собираетесь сделать что-то вроде:

Dim myBar As CommandBar, myButt As CommandBarControl 

'Delete the toolbar if it already exists'
On Error Resume Next 
CommandBars("My Toolbar").Delete 
On Error Goto 0

Set myBar = CommandBars.Add(Name:="My Toolbar", _
      Position:=msoBarFloating, Temporary:=True) 
myBar.Visible = True 

 ' Create a button with text on the bar and set some properties.'
Set myButt = ComBar.Controls.Add(Type:=msoControlButton) 
With myButt
    .Caption = "Macro1" 
    .Style = msoButtonCaption 
    .TooltipText = "Run Macro1" 
    .OnAction = "Macro1" 
End With 

 ' Create a button with an image on the bar and set some properties.'
Set myButt = ComBar.Controls.Add(Type:=msoControlButton) 
With myButt  
     'the faceId line will let you choose an icon'
     ' If you choose to use the faceId then the caption is not displayed'
    .FaceId = 1000 
    .Caption = "Icon Button" 
    .TooltipText = "Run Macro2" 
    .OnAction = "Macro2" 
End With 

Вежливое действие также заключается в удалении панели инструментов при выходе.

Другие советы

Не уверен, что это то, что вы ищете, но я подумал, что это может вам помочь:

Excel - панель инструментов макросов

Поскольку вы не указали версию Excel, я не уверен, сработает ли она для вас или нет, но, возможно, она даст вам хорошую отправную точку.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top