Hallo,
habe ein Problem bei der Benützung der Workbook Events und einer Funktion zum herausfinden ob die Zelle eine Formel beinhaltet.
Muss eine Zelle mittels bedingter Formatierung formatieren, falls die Zelle eine Formel enthält. Dies Funktioniert wunderbar wenn ich im VBA eine Funktion hinzufüge die mir dies überprüft und diese dann in die bedingte Fomatierungsformel einfüge. Beim öffnen der Datei erstelle ich eine eigene Menüleiste (Add Inn Buttons). Diese wird allerdings nicht mehr erstelle, sobald ich diese Funktion HasFormula drin hab.
Hab auch schon versucht das hinzufügen der Buttons in dieser Funktion HasFormula aufzurufen (einmalig), funktioniert auch, allerdings funktioniert dann die bedingte Formatierung mittels dieser Funktion nicht mehr! Was kann ich tun damit beides gleichzeitig funktioniert. Beim Start wird keines der Workbook events ausgeführt (open, activate ..) was muss ich machen damit das wieder funktioiniert?
Beispiel:
Modul:
Private Function HasFormula(c As Range) as Boolean
HasFormula = c.HasFormula
End Function
Code aus der ThisWorkbook datei:
'add toolbar with buttons on workbook open
Private Sub Workbook_Open()
Call CreateToolbar
Call CreateButton
End Sub
'creates the toolbar
Public Sub CreateToolbar()
Dim TBar As CommandBar
Set TBar = Application.CommandBars.Add 'add a toolbar button
With TBar
.Name = "Test"
.Top = 0
.Left = 0
.Visible = True
.Position = msoBarTop
End With
End Sub
'create the toolbarbutton
Sub CreateButton()
Dim NewBtn As CommandBarButton
Set NewBtn = Application.CommandBars("Test").Controls.Add(Type:=msoControlButton)
With NewBtn
.OnAction = "Print" 'action start when toolbarbutton clicked
.Caption = "Print"
.Style = msoButtonIconAndCaption
.FaceId = 4 'print icon
End With
End Sub
Danke Alex
|