Eigenes Menü funktioniert nicht, wer kann helfen?
23.06.2004 21:47:53
Andy
habe ein eigenes Menü erstellt, welches leider nur teilweise
funktioniert. Das Ausblenden des Originalen geht und dsa wider-
herstellen mit Reset auch. Was habe ich falschgemacht, wer kennt
sich aus und kann mir den Fehler nennen bzw. an meinerm Beispiel
zeigen? Bin für jeden Rat sehr dankbar!
'===============================================================
Sub MenuOn()
Dim i As Integer
Dim objCmdBarControl As Office.CommandBarControl
Dim objCmdBarButton As Office.CommandBarButton
'bestehendes Menü löschen
Do While CommandBars(1).Controls.Count >= 1
CommandBars(1).Controls.Item(1).Delete
Loop
'benutzerdefiniertes Menü mit Untermenü erstellen
Set objCmdBarControl = Application.CommandBars(1).Controls.Add(Type:=msoControlPopup, before:=1, Temporary:=True)
objCmdBarControl.Caption = "Dienst auswählen..."
'benutzerdefinierte einträge im untermenü erstellen
Set objCmdBarControl = Application.CommandBars(1).Controls.Add(Type:=msoControlButton)
objCmdBarControl.Caption = "Spätschicht"
objCmdBarControl.OnAction = "Spätschicht"
Set objCmdBarControl = Application.CommandBars(1).Controls.Add(Type:=msoControlButton)
With objCmdBarButton
objCmdBarControl.Caption = "Nachtschicht"
objCmdBarControl.OnAction = "Nachtschicht"
End With
Set objCmdBarControl = Application.CommandBars(1).Controls.Add(Type:=msoControlButton)
With objCmdBarButton
objCmdBarControl.BeginGroup = True
objCmdBarControl.Caption = "Tagschicht"
objCmdBarControl.OnAction = "Tagschicht"
End With
Set objCmdBarControl = Application.CommandBars(1).Controls.Add(Type:=msoControlButton)
With objCmdBarButton
objCmdBarControl.Caption = "Zwischenschicht"
objCmdBarControl.OnAction = "Zwischenschicht"
End With
'==============================================================
' 2. MenüPopup mit Untermenu anlegen:
'==============================================================
'benutzerdefiniertes Menü 2 mit Untermenü erstellen
Set objCmdBarControl = Application.CommandBars(1).Controls.Add(Type:=msoControlPopup, before:=2, Temporary:=True)
objCmdBarControl.Caption = "Freizeiten..."
Set objCmdBarControl = Application.CommandBars(1).Controls.Add(Type:=msoControlButton)
With objCmdBarButton
objCmdBarControl.Caption = "Schlaffrei"
objCmdBarControl.OnAction = "Schlaffrei"
End With
Set objCmdBarControl = Application.CommandBars(1).Controls.Add(Type:=msoControlButton)
With objCmdBarButton
objCmdBarControl.Caption = "Frei"
objCmdBarControl.OnAction = "Frei"
End With
Set objCmdBarControl = Application.CommandBars(1).Controls.Add(Type:=msoControlButton)
With objCmdBarButton
objCmdBarControl.Caption = "Urlaub"
objCmdBarControl.OnAction = "Urlaub"
End With
Set objCmdBarControl = Application.CommandBars(1).Controls.Add(Type:=msoControlButton)
With objCmdBarButton
objCmdBarControl.BeginGroup = True
objCmdBarControl.Caption = "Krank"
objCmdBarControl.OnAction = "Krank"
End With
'==============================================================
' 2. Menübutton anlegen:
'==============================================================
Set objCmdBarControl = Application.CommandBars(1).Controls.Add(Type:=msoControlButton)
With objCmdBarButton
objCmdBarControl.Caption = "Info Gesamt"
objCmdBarControl.OnAction = "Info_Gesamt"
End With
'==============================================================
' 3. Menübutton anlegen:
'==============================================================
Set objCmdBarControl = Application.CommandBars(1).Controls.Add(Type:=msoControlButton)
With objCmdBarButton
.BeginGroup = True
.Caption = "Beenden"
.OnAction = "Programm_Beenden"
End With
End Sub
'==============================================================
Sub MenuReset()
Application.CommandBars(1).Reset
End Sub
'==============================================================
'===============================================================
Gruß Andy