3k Aufrufe
Gefragt in Tabellenkalkulation von Mitglied (926 Punkte)
Hallo Helfer,
ich habe bereits ein AddIn, das u.a. eigene Menues in die Menueleiste einfügt. Um noch weniger die Maus benutzen zu müssen, hätte ich gerne das Kontextmenü des Tabellenblattes:" .CommandBars("Ply")" als Untermenü des ".CommandBars("Cell")"

Sub KontextmenueErgaenzen()
Dim oBtn As CommandBarButton
Set oBtn = Application.CommandBars("Cell").Controls.Add
With oBtn
.Caption = "Tab-blattkonte&xtmenue"
was gehörthier rein?
End With
End Sub

Vielen dank im Voraus
mfg
Wolfgang

11 Antworten

0 Punkte
Beantwortet von fedjo Experte (2.2k Punkte)
Hallo Wolfgang,
vielleicht kann dir diese Seite weiterhelfen.

Gruß
fedjo
0 Punkte
Beantwortet von Mitglied (926 Punkte)
Hallo Fedjo,
da sind zwar auch viele interessante Dinge zu finden, aber nicht das was ich suche.
Ich werde einen anderen Weg versuchen, um mir einige Aktionen aus dem Tabellenblattkontextmenü in das Zellkontextmenü zu integrieren. Dazu habe ich später sicher noch Fragen.

mfg
Wolfgang
0 Punkte
Beantwortet von Mitglied (926 Punkte)
Hallo,
an anderer Stelle wurde ich mal auf die Anweisung "Send Key" hingewiesen.
Geht irgendwie auch "Send RightKlick" to CommandBars("Ply")?
Ich will "nur" das "KontextMenue des Tabellenblattes" ohne Maus aufrufen.[b]
0 Punkte
Beantwortet von fedjo Experte (2.2k Punkte)
Hallo Wolfgang,
die "rechte Maustaste" oder "aktuelles Kontextmenü öffnen"
ist mit dem Tastenkürzel Umschalt + F10 möglich.

Gruß
fedjo
0 Punkte
Beantwortet von Mitglied (926 Punkte)
Hallo,
es kann SOOO einfach sein, man muss nur erstmal drauf kommen!

Sub KontextmenueErgaenzen()
With CommandBars("Cell").Controls.Add(Type:=msoControlPopup)
.BeginGroup = True
.Caption = "&Tabelle"
With .Controls.Add
.Caption = "Konnte&xt Menue Tab"
.OnAction = "CommandBars_Ply"
End With
End Sub

Sub CommandBars_Ply()
CommandBars("Ply").ShowPopup
End Sub

Und wieder kann ich einiges mehr OHNE Maus erledigen!
mfg
Wolfgang
0 Punkte
Beantwortet von fedjo Experte (2.2k Punkte)
Hallo Wolfgang,
da kannst du ja auch noch ein Symbol hinzufügen.
z.B.
.FaceId = 266 'Symbol
.Caption = "Konnte&xt Menue Tab"
.OnAction = "CommandBars_Ply"

Gruß
fedjo
0 Punkte
Beantwortet von Mitglied (926 Punkte)
Hallo Fedjo,
danke für die Anregung, ich mache das immer gleich, wenn ich erstmal das Makro zum laufen gebracht habe. Habe dazu auch eine Excel-Datei, die mir alle verfügbaren Symbole mit ihren Face--ID´s anzeigt.
mfg
Wolfgang
0 Punkte
Beantwortet von Mitglied (926 Punkte)
Hallo Fedjo,
ich war jetzt doch noch neugierig, warum du gerade die FaceID 266 vorgeschlagen hast.
Ich finde den Fuchskopf genial, den hatte ich bisher übersehen, aber jetzt gleich in ein Menue eingebaut.
mfg
Wolfgang
0 Punkte
Beantwortet von fedjo Experte (2.2k Punkte)
Hallo Wolfgang,
das Symbol mit dem Fuchskopf habe ich aus den ca. 5000 St. nur ausgewählt, weil es sich farblich von den anderen abhebt.
Ich wollte dich auch noch an Untermenüs darauf aufmerksam machen.

Gruß
fedjo
z.B.
Option Explicit
Sub Eigenes_Menu()
Application.CommandBars("Cell").Reset
With CommandBars("Cell").Controls.Add(Type:=msoControlPopup)
.BeginGroup = True 'Trennlinie
On Error GoTo 0
.Caption = "Erstmusterliste"
' 1 Menüpunkt
With .Controls.Add
.FaceId = 718
.Caption = "&M1"
.OnAction = "Makro1"
End With
' 2 Menüpunkt
With .Controls.Add
.FaceId = 718
.Caption = "&M2"
.OnAction = "Makro2"
'3 Menüpunkt
End With
With .Controls.Add
.FaceId = 2105
.Caption = "&M3"
.OnAction = "Makro3"
End With
With .Controls.Add
.FaceId = 21
.Caption = "&M4"
.OnAction = "Makro4"
End With
End With
End Sub
0 Punkte
Beantwortet von Mitglied (926 Punkte)
Hallo Fedjo,
.Caption = "&Erstmusterliste" ergänzt.
.Caption = "M&1", das & verschoben, denn in einem (Unter-)Menü 4x der selbe Buchstabe als Shortcut geht nicht.
mfg
Wolfgang
...