AW: Nachtrag
18.03.2007 17:43:00
mumpel
Eine benutzerdefinierte Symbolleiste legt man über VBA an. Beim Öffnen der Arbeitsmappe wird die Symbolleiste angelegt, beim Schließen wieder gelöscht. Der gesamte Code ist zu lang. Werde mal eine Beispielmappe suchen und hier platzieren. Ohne VBA-Kenntniesse wirst Du den Code erst mal nicht verstehen. Aber zum Lernen ist der ideal. https://www.herber.de/bbs/user/41155.zip
Codebeipiel (Test ist der Name der Symbolleiste): Muss in "DieseArbeitsmappe" Deiner Arbeitsmappe (VBA-Editor)
Private Sub Workbook_Open()
Dim symb As CommandBar
Dim AA As Object
On Error Resume Next
Set symb = Application.CommandBars.Add("Test", Position:=msoBarTop, Temporary:=True)
With symb
.Left = 0
.Visible = True
End With
Set AA = Application.CommandBars("Test").Controls.Add(Type:=msoControlButton)
With AA
.Style = msoButtonCaption 'Schaltfläche mit Text, ohne Icon
.Caption = "Jan" ' Name des Textes
.BeginGroup = True 'Gruppentrennzeichen True = ein, False = aus
.OnAction = "JanEin" 'Name des auszuführenden Makros
End With
Set AA = Application.CommandBars("Test").Controls.Add(Type:=msoControlButton)
With AA
.Style = msoButtonIcon 'Schaltfläche mit Icon, ohne Text
.FaceId = 125 'ID des Symbols, herauszufinden mit "Symbolpicker" im Downloadbereich dieser HP
.TooltipText = "Arbeitszeiten verwalten (Tabellenteil 1)" 'Text der angezeigt werden soll beim Verweilen auf dem Element.
.OnAction = "Arbeitszeiten"
.BeginGroup = True
End With
Set AA = Application.CommandBars("Test").Controls.Add(Type:=msoControlButton)
With AA
.Style = msoButtonIconAndCaption 'Schaltfläche mit Icon und text
.FaceId = 125
.Caption = "Jan" ' Name des Textes
.TooltipText = "Arbeitszeiten verwalten (Tabellenteil 1)"
.OnAction = "Arbeitszeiten"
.BeginGroup = True
End With
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
With Application.CommandBars(1)
.Controls("Test").Delete
End With
Application.CommandBars("Test").Delete
End Sub
Gruss Rene