13.03.2017, 18:03
Hallo
ich möchte beim Start einer Datei folgenden Code ausführen:
Dazu habe ich in "Dieser Arbeitsmappe" diese Befehle eingesetzt
Das Makro NewMenueBar wird ausgeführt .. die MsgBox wird angezeigt. Aber das Menü wird nicht eingefügt.
Wenn ich das Makro nochmals ausführe, wenn die Datei geladen ist funktioniert es ohne Probleme.
Wie bekomme ich es hin, dass er das Menü direkt wie gewünscht erweitert?
Danke
Gruss
Stefan
ich möchte beim Start einer Datei folgenden Code ausführen:
Code:
Sub NewMenueBar()
Dim oCmdBar As CommandBar
Dim oPopUp As CommandBarPopup
Dim oCmdBtn As CommandBarButton
Dim datDay As Date
Dim iMonths As Integer
Call DeleteNewMenueBar
Set oCmdBar = Application.CommandBars.Add( _
Name:="MyNewCommandBar", _
Position:=msoBarTop, _
MenuBar:=True, _
temporary:=True)
Set oPopUp = oCmdBar.Controls.Add(msoControlPopup)
oPopUp.Caption = "Prüfung"
For iMonths = 1 To 12
Set oCmdBtn = oPopUp.Controls.Add
With oCmdBtn
.Caption = Format(DateSerial(1, iMonths, 1), "mmmm") & " Druck"
.OnAction = ""
.Style = msoButtonCaption
End With
Next iMonths
Application.CommandBars("Worksheet Menu Bar").Enabled = False
oCmdBar.Visible = True
MsgBox "Makro ausgeführt"
End Sub
Sub DeleteNewMenueBar()
On Error GoTo ERRORHANDLER
Application.CommandBars("MyNewCommandBar").Delete
Application.CommandBars("Worksheet Menu Bar").Enabled = True
Exit Sub
ERRORHANDLER:
End Sub
Code:
Private Sub Workbook_Open()
NewMenueBar
End Sub
Das Makro NewMenueBar wird ausgeführt .. die MsgBox wird angezeigt. Aber das Menü wird nicht eingefügt.
Wenn ich das Makro nochmals ausführe, wenn die Datei geladen ist funktioniert es ohne Probleme.
Wie bekomme ich es hin, dass er das Menü direkt wie gewünscht erweitert?
Danke
Gruss
Stefan