Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Contextmenü mit variabler enable option

Forumthread: Contextmenü mit variabler enable option

Contextmenü mit variabler enable option
Franz
Hallo liebe "Excellisten".
ich möchte gerne erreichen, dass wenn ich eine bestimmte Tabelle anfahre der Menü-Punkt "FILM_abspielen" nicht aktivierbar ist, eventuell mit " .Enabled = False" .
Wer kann mir helfen?

Sub NeuesKontextMenü()
'CommandBars("Cell")
Dim m As CommandBarButton
With CommandBars("Cell")
Do While .Controls.Count > 0
On Error Resume Next
.Controls(1).Delete
Loop
Set m = .Controls.Add(msoControlButton)
With m
.Caption = "VOLLTEXTSUCHE starten"
.OnAction = "AlleTreffer_auflisten_oder_solo"
End With
Set m = .Controls.Add(msoControlButton)
With m
.Caption = "FILM abspielen"
.OnAction = "FILM_anschauen"
.Enabled = True
End With
End With
End Sub

Die Liste ist natürlich länger.
Tschüss!
Franz D.
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Contextmenü mit variabler enable option
10.10.2009 22:18:58
fcs
Hallo Franz,
die folgenden beiden Prozeduren (ungetestet) muss du im VBA-Editor unter dem Tabellenblatt einfügen, bei dessen Selektion der Menüpunkt deaktiviert werden soll.
Gruß
Franz
Private Sub Worksheet_Activate()
Dim m As CommandBarButton
On Error GoTo Fehler
With CommandBars("Cell")
For Each m In .Controls
With m
If .Caption = "FILM abspielen" Then
.Enabled = False
End If
End With
Resume01:
Next
End With
Fehler:
With Err
If .Number  0 Then
Resume Resume01
End If
End With
End Sub
Private Sub Worksheet_Deactivate()
Dim m As CommandBarButton
On Error GoTo Fehler
With CommandBars("Cell")
For Each m In .Controls
With m
If .Caption = "FILM abspielen" Then
.Enabled = True
End If
End With
Resume01:
Next
End With
Fehler:
With Err
If .Number  0 Then
Resume Resume01
End If
End With
End Sub

Anzeige
AW: Contextmenü mit variabler enable option
10.10.2009 22:20:27
Nepumuk
Hallo,
benutz doch einfach eine öffentliche Variable für den einen Button. Diesen kannst du dann im Activate-Ereignis der entsprechenden Tabelle auf disabled und in den anderen auf enabled setzen. Dazu am besten das Workbook_SheetActivate-Ereignis benutzen. Und nicht vergessen, im Open-Ereignis das Event per Call aufrufen, damit das Menü schon beim öffnen der Mappe entsprechend der aktiven Tabelle eingestellt ist.
Gruß
Nepumuk
Anzeige
AW: Contextmenü mit variabler enable option
10.10.2009 22:30:21
Franz
Danke Nepumuk,
Danke Franz,
Werde die Tipps umsetzen.
Schönes Wochenende wünscht
Franz D.
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige