2017-10-12 5 views
1

Word (2010)에서 임시 명령 모음을 만들려면이 코드가 있어야합니다. Excel에서도 같은 결과가 나타납니다. 막대를 만듭니다. 내가 액세스 할 수 있고 속성을 읽고 삭제할 수 있기 때문에 알 수 있습니다. 그러나 나는 그것을 보이게 할 수 없다. 내 페이지 상단 근처에 어딘가에 떠 있어야하지만 그렇지 않습니다. 어떤 아이디어? 측면 질문으로 CommandBar를 표시 할 수 없습니다.

Sub AddCommandbar() 
    Const CmdName As String = "Test Bar" 

    Dim MyBar As CommandBar 
    Dim MyCtl As CommandBarControl 
    Dim MyList() As String 
    Dim Cmd As CommandBar 
    Dim i As Integer 

    ' delete the existing 
    For Each Cmd In CommandBars 
     If Cmd.Name = CmdName Then 
      Cmd.Delete 
      Debug.Print CmdName; " deleted" 
      Exit For 
     End If 
    Next Cmd 

    Exit Sub 
    Set MyBar = CommandBars.Add(Name:=CmdName, _ 
           Position:=msoBarFloating, _ 
           MenuBar:=True, _ 
           Temporary:=True) 
    Set MyCtl = CommandBars(CmdName).Controls.Add(_ 
           Type:=msoControlDropdown, _ 
           Before:=1) 
    MyList = Split("One,Two,Three", ",") 
    With MyCtl 
     .Caption = "Select a number" 
     .Style = msoComboLabel 
     .BeginGroup = True 
     For i = 0 To UBound(MyList) 
      .AddItem MyList(i) 
     Next i 
     .ListIndex = 1 
    End With 
    CommandBars(CmdName).Visible = True 
End Sub 

MenuBar:=True는 기존이 추가로 교체 할 예정이다. 그렇지 않습니다. 막대의 여러 인스턴스가 만들어집니다. 모두 사라질 때까지 액세스하고 삭제할 수 있습니다.

+0

테스트 중간에 코드 중간에있는 'Exit Sub'가 있다고 가정하고, 실제로이 코드를 사용할 때는 거기에 있지 않습니다. 옳은? – YowE3K

+1

애드 인 탭에 표시되지 않습니까? 가정 할 때 2007 + –

+0

그래서 Top, Bottom 및 Floating의 위치가 Add-Ins 탭에 추가됩니다. 왼쪽과 오른쪽이 작동하지만 전혀 찾을 수 없습니다. 그리고 MenuBar 및 PopUp "런타임 오류 '5': 잘못된 프로 시저 호출 또는 인수"오류가 발생합니다. – YowE3K

답변

3

Office 2007에서 리본 메뉴가 도입 된 이후로 툴바를 표시 할 수있는 유일한 곳은 "추가 기능"리본 탭입니다.