Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Cursor in Textbox setzen

Forumthread: Cursor in Textbox setzen

Cursor in Textbox setzen
09.01.2003 18:17:36
Schubbi
Sorry, wie gesagt ich bin Neuling. Ich versuch mich mal so präzise wie möglich auszudrücken.
Ich hab in meiner Userform 6 Textfelder von denen 3 Pflichtfelder sind, sowie einen CommandButton der bei Push die Werte in die Excel Tabelle ausgeben soll, bzw. erkennen soll ob ein Pflichtfeld net ausgefüllt ist.
Falls dies der Fall sein soll, wär es mein ziel, das der Cursor in dieses Pflichtfeld(Textbox) in der Userform springt.

UNd noch ne andere Frage:
Wie kann ich z.B der Zelle A1 einen Inhalt zuweisen, wenn ich auf einen Knopf drücke??

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Cursor in Textbox setzen
09.01.2003 19:01:57
Thilo
1. Die Ueberpruefung sollte so oder aehnlich laufen:
sub commandbutton_click()
If textbox1.text = "" Then
Textbox1.activate
End If
End sub
2.
sub commandbutton_click()
activesheet.range("a1") = "Inhalt"
End sub

Ich hoffe das beantwortet deine Fragen...

auf ein neues....
09.01.2003 19:38:07
Chris
Lieber Schubbi

Es ist nicht nötig, die gleiche Frage 3 Mal zu posten, denn die Antwort ist da. Eigentlich schon im ersten Beitrag, ausführlicher im zweiten und jetzt noch hier von Thilo.
https://www.herber.de/forum/messages/201255.html

Wenn du Schwierigkeiten mit der Codeanwendung hast kannst du dich gerne melden, aber bitte unter dem selben Beitrag.

Bin mir bewusst, dass du dies nicht böswillig machst, aber ist trotzdem nervig. Kostet Zeit und Nerven.

Nichts für Ungut.

Chris

Anzeige
Re: Cursor in Textbox setzen
09.01.2003 20:28:11
SteffanI
Ich nehme mal folgendes an:
Userform (Name UserForm1) mit
- 6 Textboxen (Namen: Textbox1, Textbox2, ...), Pflichtfelder TB1-TB3
- 1 Button (Namen: CommandButton1)

Private Sub CommandButton1_Click()
With UserForm1
If .TextBox1.Value = "" Then MsgBox "Eingabe erforderlich!", vbOKOnly: _
.TextBox1.SetFocus: Exit Sub
If .TextBox2.Value = "" Then MsgBox "Eingabe erforderlich!", vbOKOnly: _
.TextBox2.SetFocus: Exit Sub
If .TextBox3.Value = "" Then MsgBox "Eingabe erforderlich!", vbOKOnly: _
.TextBox3.SetFocus: Exit Sub
Worksheets("Tabelle1").Cells(1, 1).Value = .TextBox1.Value
Worksheets("Tabelle1").Cells(1, 2).Value = .TextBox2.Value
Worksheets("Tabelle1").Cells(1, 3).Value = .TextBox3.Value
Worksheets("Tabelle1").Cells(1, 4).Value = .TextBox4.Value
Worksheets("Tabelle1").Cells(1, 5).Value = .TextBox5.Value
Worksheets("Tabelle1").Cells(1, 6).Value = .TextBox6.Value
End With
Unload UserForm1
End Sub

War es das?

Steffan

Anzeige
;
Anzeige

Infobox / Tutorial

Cursor in Textbox setzen: Eine Schritt-für-Schritt-Anleitung


Schritt-für-Schritt-Anleitung

Um den Cursor in einer Textbox in einer Userform zu setzen, kannst du VBA (Visual Basic for Applications) nutzen. Hier ist eine einfache Schritt-für-Schritt-Anleitung, wie du dies umsetzen kannst:

  1. Öffne den VBA-Editor: Gehe in Excel zu Entwicklertools > Visual Basic.

  2. Erstelle eine Userform: Füge eine neue Userform hinzu und nenne sie UserForm1.

  3. Füge Textboxen und einen Button hinzu: Füge sechs Textboxen (Textbox1 bis Textbox6) und einen CommandButton (CommandButton1) hinzu.

  4. Füge den folgenden Code zum CommandButton hinzu:

    Private Sub CommandButton1_Click()
       With UserForm1
           If .TextBox1.Value = "" Then
               MsgBox "Eingabe erforderlich!", vbOKOnly
               .TextBox1.SetFocus
               Exit Sub
           End If
    
           If .TextBox2.Value = "" Then
               MsgBox "Eingabe erforderlich!", vbOKOnly
               .TextBox2.SetFocus
               Exit Sub
           End If
    
           If .TextBox3.Value = "" Then
               MsgBox "Eingabe erforderlich!", vbOKOnly
               .TextBox3.SetFocus
               Exit Sub
           End If
    
           ' Werte in die Excel-Tabelle schreiben
           Worksheets("Tabelle1").Cells(1, 1).Value = .TextBox1.Value
           Worksheets("Tabelle1").Cells(1, 2).Value = .TextBox2.Value
           Worksheets("Tabelle1").Cells(1, 3).Value = .TextBox3.Value
           Worksheets("Tabelle1").Cells(1, 4).Value = .TextBox4.Value
           Worksheets("Tabelle1").Cells(1, 5).Value = .TextBox5.Value
           Worksheets("Tabelle1").Cells(1, 6).Value = .TextBox6.Value
       End With
       Unload UserForm1
    End Sub
  5. Test die Userform: Starte die Userform und überprüfe, ob der Cursor in das entsprechende Pflichtfeld springt, wenn du auf den Button klickst.


Häufige Fehler und Lösungen

  • Fehler: Cursor springt nicht zu Textbox

    • Lösung: Stelle sicher, dass der Code die Methode .SetFocus korrekt verwendet. Überprüfe, ob das Textfeld leer ist, bevor du den Fokus setzt.
  • Fehler: Werte werden nicht in die Tabelle geschrieben

    • Lösung: Überprüfe, ob der Name des Arbeitsblatts korrekt ist und ob die Zellen, in die du schreibst, existieren.

Alternative Methoden

Eine weitere Möglichkeit, den Cursor in einer Textbox zu setzen, ist die Verwendung eines UserForm_Initialize-Ereignisses, um den Cursor direkt beim Öffnen der Userform in ein bestimmtes Textfeld zu setzen:

Private Sub UserForm_Initialize()
    TextBox1.SetFocus
End Sub

Diese Methode kann nützlich sein, wenn du die Userform öffnest und den Benutzer direkt in ein bestimmtes Eingabefeld lenken möchtest.


Praktische Beispiele

Hier sind einige Szenarien, in denen du den Cursor in einer Textbox setzen könntest:

  1. Eingabeformular für Kunden: Wenn ein Kunde ein Pflichtfeld nicht ausfüllt, wird er direkt zu diesem Feld zurückgeführt.
  2. Datenvalidierung: Bei der Eingabe von Daten in eine Userform kann der Cursor automatisch in das entsprechende Feld springen, um die Benutzerfreundlichkeit zu erhöhen.

Tipps für Profis

  • Nutze die MsgBox-Funktion, um dem Benutzer hilfreiche Hinweise zu geben, wenn ein Pflichtfeld nicht ausgefüllt ist.
  • Mache Gebrauch von If-Then-Bedingungen, um die Benutzerinteraktion zu steuern und die Eingabefelder effizient zu validieren.
  • Verwende die vba set cursor position-Technik, um die Benutzererfahrung in komplexeren Userforms zu optimieren.

FAQ: Häufige Fragen

1. Wie kann ich den Cursor in mehreren Textboxen setzen? Du kannst die .SetFocus-Methode für jede Textbox verwenden, abhängig von den Bedingungen, die du definierst.

2. Funktioniert das auch in Excel 2016? Ja, der Code zur Steuerung der Textboxen und zur Cursorpositionierung funktioniert in Excel 2016 sowie in anderen Versionen, die VBA unterstützen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige