Anzeige
Archiv - Navigation
1828to1832
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

Textbox wird mit Pfeiltaste verlassen

Textbox wird mit Pfeiltaste verlassen
06.05.2021 08:18:20
JoS
Hallo,
Ich habe eine Textbox und darüber eine Combobox. Wenn man im Textfeld mit den Pfeilen nach oben navigiert und dann eine Zeile zu weit geht landet man in der Comobox darüber. Wenn man dann wieder die Pfeiltaste nach unten drückt, kommt man einen Listeneintrag in der Combobox weiter runter.
Gibt es die Möglichkeit das verlassen der Textbox mit den Pfeiltasten zu unterbinden?
Grüße
JoS

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Textbox wird mit Pfeiltaste verlassen
06.05.2021 08:57:15
ChrisL
Hi
Generell unterbinden kannst du es wie folgt:

Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 38 Then KeyCode = False
End Sub
Um es ganz spezifisch zu steuern d.h. bei MultiLine teilw. erlauben und nur den Exit verhindern, fällt mir nichts ein bzw. habe ich Zweifel ob es ginge. Bei Bedarf Frage wieder als offen markieren.
Grundsätzlich würde ich die vorgesehenen Verhalten von Steuerelementen nicht verändern, aber das ist dir überlassen.
cu
Chris
Das würde z. B. so...
06.05.2021 08:59:08
Case
Hallo, :-)
... klappen: ;-)

Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 38 Or KeyCode = 40 Then KeyCode = 0
End Sub
Servus
Case
Anzeige
AW: Das würde z. B. so...
06.05.2021 10:57:17
JoS
Das Problem ist, dann kann ich gar nicht die Pfeiltasten im Textfeld verwenden. Ich will allerdings nur die Textbox nicht verlassen mit den Pfeilen. Im Text möchte ich schon gerne mit den Pfeiltasten navigieren.
AW: Das würde z. B. so...
06.05.2021 12:09:25
Rudi
Hallo,

Private Sub TextBox2_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 38 Then
If TextBox2.CurLine = 0 Then
KeyCode = 0
End If
End If
End Sub
Gruß
Rudi
Vielen Dank!
06.05.2021 12:15:37
JoS
Vielen Dank! Funktioniert
Dann können wir noch auf...
06.05.2021 12:14:22
Case
Hallo, :-)
... einen Workaround zurückgreifen: ;-)
Erstelle über und unter der TextBox jeweils eine weitere TextBox mit den Einstellungen:
  • Visible = True

  • TabStop = False

  • Height = 0

  • Width = 0

  • Diese dürfen kein anderes Element schneiden.
    Heißen diese z. B. TextBox2 und TextBox3, dann noch diesen Code:
    
    Private Sub TextBox2_Enter()
    TextBox1.SetFocus
    End Sub
    Private Sub TextBox3_Enter()
    TextBox1.SetFocus
    End Sub
    
    TextBox1 musst du natürlich an deinen Namen anpassen.
    Meinen anderen Code löschen.
    Servus
    Case
    Anzeige

    Links zu Excel-Dialogen

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige