AW: Button in Menüleiste ändern
15.08.2007 10:38:00
Rudi
Hallo,
das sollte etwa so gehen:
Public blnAutoDruck As Boolean
Sub EigeneMenueleisteErstellen()
' >>>>>>>>>>>
Dim oBar As CommandBar
Dim oBox As CommandBarComboBox
Dim oBtn As CommandBarButton
Dim Blatt As Worksheet
Dim i As Integer
For Each oBar In Application.CommandBars
If oBar.Name = "Volleyball1" Then oBar.Delete
Next
On Error Resume Next
Application.CommandBars.Add("Volleyball1").Delete
On Error GoTo 0
' Name der 1. Menüleiste ist "Volleyball1"
Set oBar = Application.CommandBars.Add(Name:="Volleyball1", Position:=msoBarTop, temporary:= _
True)
oBar.Visible = True
' >>
Set oBtn = oBar.Controls.Add(Type:=msoControlButton)
With oBtn
.Style = msoButtonIconAndCaption
.FaceId = 1922
.Caption = "AKTIV"
.Enabled = True
.TooltipText = "automatischer Ausdruck ist aktiv"
.OnAction = "Autodruck"
End With
blnAutoDruck = True
End Sub
Sub Autodruck()
' bei jedem Klick Wechsel zwischen Captin = AKTIV und NICHT AKTIV
' wenn AKTIV, dann beim Wechseln der Zelle in Tabelle1 prüfen,
' ob in der Zeile, die ich verlasse, die Spalten C und D gefüllt sind
' wenn ja, dann weitere Befehle ausführen
With Application.CommandBars.ActionControl
If blnAutoDruck = True Then
.Caption = "NICHT AKTIV"
blnAutoDruck = False
Else
.Caption = "AKTIV"
blnAutoDruck = True
End If
End With
End Sub
In Worksheet_Change kannst du einfach blnAutoDruck abfragen und entsprechend reagieren.
Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe