Recktsklick- Menü ändern zwecks Makrostart

18/03/2013 - 17:20 von Hans Alborg | Report spam
Hello agenn.

Noch ein Ding, wo ich wieder staunen mußte:

Um viel Scrollerei zu vermeiden (der Button ist ganz oben auf der Tabelle,
500 Zeilen) wollte ich das mit dem Kontextmenü mal probieren.

Geht prima! Im Netz findet sich folgender Code:

Set ctrl = CommandBars("Cell").Controls.Add
ctrl.Caption = "zur Monatsübersicht"
ctrl.OnAction = "Auftràge_CBt1_Click"

CommandBars("Cell").Reset

Da ich die ersten Zeilen beim Sheet.Activate-Ereignis starte, muß die Reset-
Zeile so placiert werden, daß sie möglichst gleich nach Nutzung des
Rechtsklicks ausgeführt wird, sonst gibt's den Menüeintrag mehrmals. Naja.

Was ich nicht konnte was das:
Ein Makro "Auftràge_Hilfseingabe" wird ja original vom Button oben
gestartet. Vorher habe ich eine Zelle per Cursor angeklickt, deren Zeile als
Variable erfaßt wird:

Call Auftràge_Hilfseingabe(acRow)

steht beim Click- Code des Buttons.

Das mit den Klammern bekomm ich für den Code des Kontextmenüs nicht hin, das
ist der Punkt, wo ich Hilfe brauche.

Wer aufpaßt merkt, daß ich verschiedene Makros angegeben habe. Was hab ich
gemacht? Einen Esel genommen um den Anderen zu treten, àhm, ein Hilfsmakro
gebaut:

Sub Auftràge_CBt1_Click()
Call Auftràge_Hilfseingabe(acRow)
End Sub

Das ist meine -etwas peinliche- Lösung. Kann mir jetzt jemand den direkten
Weg verraten?
ctrl.OnAction = "Auftràge_Hilfseingabe(acRow)" geht definitiv nicht!

TIA,
Hans
 

Lesen sie die antworten

#1 heinzelmaier
20/03/2013 - 13:43 | Warnen spam
Am Montag, 18. Màrz 2013 17:20:13 UTC+1 schrieb Hans Alborg:
Hallo Hans,

ctrl.OnAction = "Auftràge_Hilfseingabe(acRow)" geht definitiv nicht!



Du willst also in "Auftràge_Hilfseingabe" einfach nur die Reihe der aktuell selektierten Zelle wissen?
Dann verwende doch in dieser Sub "selection.row" anstelle acRow.


HTH
Michael

Ähnliche fragen