Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1908to1912
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

sendkeys rechte Maustaste ( FN+Shift)

sendkeys rechte Maustaste ( FN+Shift)
01.12.2022 08:43:11
Manuel
Hallo Ihr Helfer,
ich möchte in einem Excel fremden Programm (nennen wir es "Fremd-APP")
kontrollieren ob eine Projektnummer aus einer Excelzelle vorhanden ist.
Vorab habe ich nach einer Möglichkeit gesucht das "Suchen-Feld" in
diesem Programm mit Sendkeys anzusprechen.

Private Sub Kontrolle_Click()
Selection.Copy 'Ich kopiere in Excel die aktive Zelle
AppActivate "Fremd-APP" 'Fremdes Programm aktivieren
'Problem an dieser Stelle. Hier müsste ein rechter
'Maustasten Befehl ausgeführt werden
'Oder alternativ kann ich über meine Tastatur die FN-Taste in Kombination mit Shift drücken um das Kontextmenü (rechte
'Maustaste) zu öffnen
Ab hier ist die Feinmotorik noch nicht eingestellt und getestet da ich nicht weiter komme...
SendKeys "{DOWN 2}", True ' in diesem Menü 2 x nach unten
Application.Wait (Now + TimeValue("0:00:01"))
SendKeys "{Enter}", True ' mit Enterbestätigen und das Suchen feld ist aktiv
SendKeys "^v" ' einfügen und...
Application.Wait (Now + TimeValue("0:00:01"))
SendKeys "{Enter}", True '...mit Enter bestätigen
SendKeys "{NUMLOCK}", True ' Zahlenblock wieder aktivieren, da Sendkeys diesen deaktiviert
End Sub
Kann mir einer bei dem Problem helfen wie ich das Kontextmenü in "Fremd-APP" aktiviert bekomme.
Über Alt oder STRG lässt sich das feld nicht ansprechen.
Vielen Dank für eure Gedanken und auch für die bereits gemachte Gedanken der vergangnen Jahre.
Über dieses Forum habe ich VBA lieben gelernt
Grüsse Manuel

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: sendkeys rechte Maustaste ( FN+Shift)
01.12.2022 22:20:24
volti
Hallo Manuel,
wenn Du die rechte Maustaste klicken möchtest, kannst Du das u.a. Beispiel verwenden.
Hierzu musst Du aber die Position, an der geklickt werden soll, kennen.
Code:


Private Declare PtrSafe Function SetCursorPos Lib "user32" ( _ ByVal x As Long, ByVal y As Long) As Long Private Declare PtrSafe Sub mouse_event Lib "user32" (ByVal dwFlags As Long, _ ByVal dx As Long, ByVal dy As Long, _ ByVal cButtons As Long, ByVal dwExtraInfo As LongPtr) Sub MausKlick(iCX As Long, iCY As Long, iButton As Integer) ' Linke bzw. rechte Maustaste an x,y-Position klicken SetCursorPos iCX, iCY ' Position setzen If iButton = 1 Then mouse_event &H6, 0, 0, 0, 0 ' linke Maustaste ElseIf iButton = 2 Then mouse_event &H18, 0, 0, 0, 0 ' rechte Maustaste End If End Sub Sub Rechtsclicktest() MausKlick 500, 500, 2 End Sub

_________________________
viele Grüße aus Freigericht 😊
Karl-Heinz

Anzeige
AW: sendkeys rechte Maustaste ( FN+Shift)
05.12.2022 10:28:34
Manuel
Vielen Dank. Das ist eine funktionale Alternative.
Da es kein "Sendkey" für dieses Vorhaben gibt, ist es sogar die perfekte Alternative.
Und die Positionierung der Maus hat auch noch zufällig gestimmt.
Liebe Grüsse M

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige