Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1960to1964
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

Dropdown bei Klick auf Zelle, Numpad schält ein und aus

Dropdown bei Klick auf Zelle, Numpad schält ein und aus
02.02.2024 08:51:57
Alex Weis
Hallo liebe Helfenden,

ich habe einen Code der mir per Klick auf die betreffenden Zelle die Dropdownliste öffnet. Das klappt zu 100%. Nur habe ich das Problem dass nach Klick auf eine Zelle mit Dropdown sich das Numpad im Wechsel ausschält und wieder einschält.

Kann ich das verhindern?

Ich denke dass dies ein alter Code ist und bei Excel 365 nicht mehr richtig funktioniert?



Hier der Code:


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim wshShell As Object
On Error Resume Next
'Hierdurch wird bei Aktivierung von Dropdownzellen Dropdown sofort automatisch _
aufgeklappt:
If ActiveCell.Validation.InCellDropdown = False Then Exit Sub
On Error GoTo 0
'ab Windows-Vista nicht mehr zuverlässig
Application.SendKeys "%{DOWN}", False
Set wshShell = CreateObject("WScript.Shell")
wshShell.SendKeys "%{DOWN}", True
Set wshShell = Nothing
End Sub


Vielen Dank für eure Bemühungen und Gruß
Alex

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dropdown bei Klick auf Zelle, Numpad schält ein und aus
02.02.2024 11:13:44
Alex Weis
Hallo Karl-Heinz,

vielen Dank für deine Antwort.

Ich hab jetzt deine Alternative (erster Link) probiert. Heißt ich habe den kompletten Code in mein Tabellenblatt kopiert.

Wenn ich jetzt auf ein Dropdownfeld klicke wird die Zelle rechts daneben markiert, sonst passiert nix.

Hab ich den Code irgendwie falsch platziert oder muss ich da noch was anpassen?

Viele Grüße Alex
Anzeige
AW: Dropdown bei Klick auf Zelle, Numpad schält ein und aus
02.02.2024 15:37:22
volti
Hallo Alex,

nein da muss nichts angepasst werden. Es ist schon so richtig.

Ziel des Codes ist, mit der Maus auf den DropDownpfeil zu klicken, der ja bei einer DropDownliste automatisch dort angezeigt wird. So, als würde man es selbst manuell machen.
Der Pfeilbutton befindet sich ja im rechten Nebenfeld.

Wenn da kein DropDownpfeil sein sollte, klickt die Maus natürlich auf das rechte Nachbarfeld und selektiert es. Ob das bei Dir so ist, kann ich nicht beurteilen, da müsste man schon alle Parameter kennen oder eine Beispielmappe haben.

Hier in dieser Demomappe klappt es auf jeden Fall.

https://www.herber.de/bbs/user/166727.xlsb

Gruß
Karl-Heinz
Anzeige
AW: Dropdown bei Klick auf Zelle, Numpad schält ein und aus
02.02.2024 15:57:05
Alex Weis
Hallo Karl-Heinz,

das ist echt kurios. Der Pfeil ist bei mir auch in der rechten Zelle.

Deine Datei funktioniert, und wenn ich eine neue Datei mache mit Dropdown geht´s auch.

Ich lade mal meine Datei hoch. Wäre cool wenn du das mal anschauen könntest.

Vielen Dank und Gruß
Alex

https://www.herber.de/bbs/user/166729.xlsm
AW: Dropdown bei Klick auf Zelle, Numpad schält ein und aus
02.02.2024 16:06:00
Alex Weis
Hallo Karl-Heinz,

das ist echt kurios. Der Pfeil ist bei mir auch in der rechten Zelle.

Deine Datei funktioniert, und wenn ich eine neue Datei mache mit Dropdown geht´s auch.

Ich lade mal meine Datei hoch. Wäre cool wenn du das mal anschauen könntest.

Vielen Dank und Gruß
Alex

https://www.herber.de/bbs/user/166729.xlsm
Anzeige
AW: Dropdown bei Klick auf Zelle, Numpad schält ein und aus
02.02.2024 16:26:06
volti
Hi,

ich hatte es schon geahnt. Es liegt daran, dass das Blatt auf 200% gezoomt ist.

Dadurch wird der Offset (in Pixeln) falsch berechnet und zu weit oben geklickt, also ins Feld statt auf den Pfleilbutton. Man müsste hier den eingestellten Zoom mit berücksichtigen. Ich hatte das Tool bisher kaum getestet. Werde ich irgendwann mal nachbessern.

Tipp: Wenn man den mouse_event und den zweiten SetCursoPos ausremmt, sieht man, wo die Maus hingesetzt wird....

Hier für Dich müsste es so reichen.


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
' Datenüberprüfung (Dropdown) automatisch aufklappen
Dim Pt As POINTAPI

On Error GoTo Fehler
' Testen, ob Dropdown vorhanden
If Target.Validation.Type > xlValidateList Then Exit Sub

With ActiveWindow.ActivePane
GetCursorPos Pt ' Mausposition retten
SetCursorPos .PointsToScreenPixelsX(Target.Offset(1, 1).Left) + 10, _
.PointsToScreenPixelsY(Target.Offset(1, 1).Top - 5) ' mit diesem Offset spielen>>>
mouse_event &H6, 0, 0, 0, 0 ' Buttonclick leftdown + leftup
SetCursorPos Pt.x, Pt.y ' Alte Mausposition wiederherstellen
End With
Fehler:
End Sub


Gruß
Karl-Heinz
Anzeige
AW: Dropdown bei Klick auf Zelle, Numpad schält ein und aus
02.02.2024 16:29:21
Alex Weis
Hallo Karl-Heinz,

du bist der Beste.

Vielen, vielen Dank.

Ich verneige mich

Gruß
Alex Weis
AW: Dropdown bei Klick auf Zelle, Numpad schält ein und aus
02.02.2024 18:15:59
volti
Hallo Alex,

ein wichtiger Nachtrag. In meiner Vorlage im CEF (Forum) war es leider schon falsch, fiel aber nicht auf, weil nicht gezoomt war.
Die Klammer war falsch gesetzt, so dass der Offset als Excel-Pixel verwendet wurde, es müssen aber Screen-Pixel sein.

Hier noch mal der richtige Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

' Datenüberprüfung (Dropdown) automatisch aufklappen
Dim Pt As POINTAPI

On Error GoTo Fehler
' Testen, ob Dropdown vorhanden
If Target.Validation.Type > xlValidateList Then Exit Sub

With ActiveWindow.ActivePane
GetCursorPos Pt ' Mausposition retten
SetCursorPos .PointsToScreenPixelsX(Target.Offset(1, 1).Left) + 10, _
.PointsToScreenPixelsY(Target.Offset(1, 1).Top) - 10
mouse_event &H6, 0, 0, 0, 0 ' Buttonclick leftdown + leftup
SetCursorPos Pt.x, Pt.y ' Alte Mausposition wiederherstellen
End With
Fehler:
End Sub


Gruß
Karl-Heinz


Anzeige
AW: Dropdown bei Klick auf Zelle, Numpad schält ein und aus
03.02.2024 08:46:45
Alex Weis
Hallo,

danke für den Nachtrag. Top service.

Gruß Alex

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige