サンプルでは、シートを選択するためのリストボックスを
メニューバーに作成します。リストボックスでシートが選択されると、
そのシートがアクティブになります。
'--- メニューバー上にリストボックスを作成します ---
Sub MakeListBox()
Dim myBar As CommandBar
Dim myMenu As CommandBarControl
Dim st As Worksheet
Set myBar = Application.CommandBars.Add (Name:="barTemp", _
Position:=msoBarTop, _
MenuBar:=True, _
Temporary:=True)
Set myMenu = myBar.Controls.Add (Type:=msoControlDropdown)
myMenu.Caption = "btnSelect"
For Each st In ActiveWorkbook.Worksheets
myMenu.AddItem st.Name
myMenu.OnAction = "SelectListBox"
Next
myBar.Visible = True
End Sub
'
'--- 選択されたシートをアクティブにします ---
Sub SelectListBox()
Dim myBar As CommandBar
Dim myMenu As CommandBarControl
Set myBar = Application.CommandBars("barTemp")
Set myMenu = myBar.Controls("btnSelect")
Worksheets(myMenu.Text).Activate
End Sub
|