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

Forumthread: Cursor in Textbox positionieren

Cursor in Textbox positionieren
Markus
Hallo und Guten Morgen,
ich habe ein kleines Problem und bin mir sicher, dass mir da jemand von Euch helfen kann:
in einer Arbeitsmappe habe ich einige UserForms angelegt, in denen Textfelder integriert sind. Diese UserForms können mittels einer Schaltfläche eingeblendet werden. In den Textfeldern stehen einige Anmerkungen.
Mein Problem: ist der gesamte Text größer als das Textfeld, kann man zwar im Textfeld scrollen, standardmäßig steht der Cursor aber ganz am Ende des Textes, sodass immer der untere Bereich sichtbar ist. Man muss also immer zuerst nach oben scrollen.
Hat jemand eine Idee, wie ich das vermeiden kann? Ich habe weder in den Eigenschaften des Textfeldes noch in der Hilfe etwas dazu finden können!
Danke und Gruß,
Markus
Anzeige

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

Betreff
Benutzer
Anzeige
AW: Cursor in Textbox positionieren
soendi
hallo markus
hier dein code:

Private Sub CommandButton1_Click()
UserForm1.Show
UserForm1.TextBox1.SelStart = 0  'DAS IST ES, WAS DU BRAUCHST...!
End Sub

gruss
soendi
AW: Cursor in Textbox positionieren
Markus
Super, vielen Dank soendi!
Das war _wirklich_ was ich brauchte... =:-)
Wünsche noch einen angenehmen Tag...
Gruß,
Markus
Anzeige
danke für die Rückmeldung! (o.T.)
06.04.2004 08:52:59
soendi
;
Anzeige
Anzeige

Infobox / Tutorial

Cursor in Textbox positionieren


Schritt-für-Schritt-Anleitung

Um den Cursor in einer VBA-Textbox zu positionieren, befolge diese Schritte:

  1. Öffne deine Excel-Arbeitsmappe und gehe zum Visual Basic for Applications (VBA) Editor. Dies kannst du tun, indem du ALT + F11 drückst.

  2. Füge ein UserForm hinzu, indem du im Menü auf Einfügen > UserForm klickst.

  3. Platziere ein Textfeld (Textbox) in das UserForm. Klicke dazu auf das Textfeld-Symbol in der Toolbox und ziehe es in das UserForm.

  4. Füge einen Button hinzu, um das UserForm zu öffnen. Das machst du ebenfalls über die Toolbox.

  5. Doppelklicke auf den Button, um das Codefenster zu öffnen. Füge den folgenden Code ein:

    Private Sub CommandButton1_Click()
       UserForm1.Show
       UserForm1.TextBox1.SelStart = 0  'Cursor an den Anfang des Textfelds setzen
    End Sub
  6. Speichere deine Änderungen und schließe den VBA-Editor.

  7. Teste das UserForm, indem du auf den Button klickst. Der Cursor sollte jetzt an den Anfang des Textfelds positioniert werden, was das Scrollen erleichtert.


Häufige Fehler und Lösungen

  • Cursor bleibt am Ende des Textes: Wenn der Cursor immer noch am Ende bleibt, stelle sicher, dass du die Zeile UserForm1.TextBox1.SelStart = 0 korrekt eingefügt hast.

  • UserForm öffnet sich nicht: Überprüfe, ob der Button korrekt verknüpft ist und der Code im richtigen Modul eingefügt wurde.


Alternative Methoden

Eine alternative Methode, um den Cursor in einem Textfeld zu positionieren, besteht darin, das TextBox-Steuerelement direkt beim Laden des UserForms anzupassen. Füge dazu den folgenden Code in das UserForm ein:

Private Sub UserForm_Initialize()
    TextBox1.SelStart = 0  'Cursor an den Anfang setzen, wenn das UserForm geladen wird
End Sub

Dies sorgt dafür, dass der Cursor immer an den Anfang des Textfelds gesetzt wird, wenn das UserForm geöffnet wird.


Praktische Beispiele

Hier sind einige Beispiele, wie du die Textbox in verschiedenen Szenarien nutzen kannst:

  1. Eingabemaske für Formulare: Wenn du ein Eingabeformular hast, kannst du den Cursor an den Anfang setzen, um den Benutzern zu helfen, sofort mit der Eingabe zu beginnen.

  2. Mehrzeilige Texte: Bei mehrzeiligen Texten in der Textbox kannst du den Cursor so positionieren, dass er immer sichtbar ist, wenn neue Informationen eingegeben werden.


Tipps für Profis

  • Nutze die SelLength-Eigenschaft, um eine bestimmte Anzahl von Zeichen zu markieren, wenn das UserForm geöffnet wird. Beispiel:

    TextBox1.SelStart = 0
    TextBox1.SelLength = Len(TextBox1.Text)  'Markiert den gesamten Text
  • Experimentiere mit dem flutter textfield cursor, wenn du in einer Anwendung mit Flutter arbeitest, um ähnliche Cursor-Positionierungsprobleme zu lösen.


FAQ: Häufige Fragen

1. Wie kann ich den Cursor in einer Textbox nach dem UserForm-Laden an eine bestimmte Position setzen? Du kannst die SelStart-Eigenschaft im UserForm_Initialize-Ereignis verwenden, um die Cursor-Position festzulegen.

2. Was mache ich, wenn mein Textfeld nicht scrollt? Stelle sicher, dass die Scrollbars-Eigenschaft des Textfelds auf 2 - fmScrollBarsVertical gesetzt ist, um vertikales Scrollen zu ermöglichen.

3. Kann ich die Cursor-Position auch in einer Excel-Tabelle setzen? Ja, du kannst die Position in einer Zelle setzen, indem du die Selection-Eigenschaft von Excel über VBA verwendest.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige