Clever-Excel-Forum

Normale Version: Steuerung der Userform durch Tastaturbefehle
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

wie kann ich meine Userform über die Tastatur auf meinem Computer direkt steuern?

Bisher benutze ich dazu eine TextBox, die die  Tastaturbefehle als Keycodes in die entsprechenden VBA Befehle interpretiert.


Also so etwas:
Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)

Select Case (KeyCode)

"Case Anweisungen des Programmcodes"

End Select

End Sub
Gesundes neues erstmal

Vielleicht hilft es dir ja weiter
Wenn du den Focus erstmal irgendwo in der Userform hast,
kannst du über Tab innerhalb der UFo von Element zu Element springen
und dann bspw. Buttons über Enter betätigen.

Gruss Igel
Hallo,

auch dir ein frohes neues Jahr. Du hast den Stachel schon genau richtig angesetzt. 
Es geht natürlich um den Fokus. Wahrscheinlich gibt es mit den normalen Bordmitteln
keine rationelle Methode so etwas in VBA umzusetzen. Aber vielleicht gibts
doch noch ein Genie oder eine geniale Idee im Forum, wie man so etwas hinbekommt.
Hi
Vielleicht versteh ich dein Problem nicht ganz.
Du musst doch die Userform über irgendeinen Code aufrufen.
Wenn du da gleich mit reinschreibst Bspw.
Userform1.Commandbutton1.SetFocus
dann hast du den Focus doch schon mal drin
und jetzt kannst du per Tab springen.

Gruss Igel
Moin,
ich weise in einer UFo den Feldern immer einen Shortcut zu, der dann natürlich in dem Namenstext auch unterstrichen ist.
Moin

Zwischenfrage an Günther
Wie machst du das mit dem unterstreichen im Namenstext ?

Gruss Igel
Hallo,

(05.01.2018, 10:40)Igelbauer schrieb: [ -> ]Wie machst du das mit dem unterstreichen im Namenstext ?

siehe unter Accelerator-Eigenschaft

Gruß Uwe
Habe das hier gefunden.

 Accelerator

Tragen Sie dort einen Buchstaben ein, der Bestandteil der Beschriftung (Caption) des Buttons ist.

Dies hat zur Folge, dass der Benutzer den Button in Verbindung mit der Alt-Taste und dem Buchstaben auslösen kann. Der Buchstabe wird auf dem Button unterstrichen dargestellt.
Sebstverständlich sollte jeder Button in einem Formular einen anderen Accelartor haben.

Kannte ich nicht und begeistert mich total. (abgesehen von den Tippfehlern, die ich nicht korrigiert habe)
Den Tipp geben wir gleich mal an den Threadersteller weiter.

Vielen Dank

Gruss Igel
Bin ebenfalls begeistert.  Vielen Dank lieber Günther!
Gern geschehen. Für mich ist dieses seit über 20 Jahren eine Selbstverständlichkeit, weil es schlichtweg userfreundlich ist. Das einzige, was mir manchmal Probleme bereitet: Wie ändere ich diesen oder jenen Label/Bezeichner so ab, dass ich einen freien (noch nicht verwendetet) Buchstaben/Zeichen verwenden kann?