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

Forumthread: Bei Klick in TextBox den gesamten Text markieren

Bei Klick in TextBox den gesamten Text markieren
17.04.2005 14:32:54
Oliver
Hallo an alle!
Meine Frage ist eigentlich schon im Betreff gestellt. Ich habe TextBoxen in einer UserForm, über die ich Zahlen eingebe die für eine Berechnung herangezogen werden. Nun möchte ich, dass wenn jemand sich vertipt hat und wieder in die entsprechende TextBox mit der Mouse klickt, dass der gesamte Text markiert wird. Im Moment erscheint nur der Courser an der Stelle, wo ich geklickt habe. Kann mir da jemand weiterhelfen?
Euch schon mal im Voraus Danke für die Hile,
Oliver
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Bei Klick in TextBox den gesamten Text markieren
17.04.2005 15:32:32
ransi


      
hallo
versuchs doch mal so:
Private Sub TextBox1_MouseDown(ByVal Button As IntegerByVal Shift As IntegerByVal X As SingleByVal Y As Single)
With TextBox1
        .SelStart = 0
        .SelLength = Len(.Text)
End With
End Sub
ransi 


Anzeige
AW: Bei Klick in TextBox den gesamten Text markieren
17.04.2005 15:42:32
Nepumuk
Hi ransi,
so würde ich es bei einer Textbox machen. Wenn mehr werden, dann so:


Private Sub TextBox1_MouseUp(ByVal Button As Integer, _
    ByVal Shift As IntegerByVal As SingleByVal As Single)
    If Button = 1 Then prcSelect
End Sub
Private Sub TextBox2_MouseUp(ByVal Button As Integer, _
    ByVal Shift As IntegerByVal As SingleByVal As Single)
    If Button = 1 Then prcSelect
End Sub
Private Sub prcSelect()
    With ActiveControl
        .SelStart = 0
        .SelLength = .TextLength
    End With
End Sub


Und wenn's viele sind, dann ab in ein Klassenmodul damit.
Gruß
Nepumuk
Anzeige
Danke Euch beiden, so hatte ich das gedacht - o.T.
17.04.2005 16:19:51
Oliver
;
Anzeige
Anzeige

Infobox / Tutorial

Text in Excel-TextBox bei Klick automatisch markieren


Schritt-für-Schritt-Anleitung

Um den gesamten Text in einer TextBox in Excel zu markieren, wenn du darauf klickst, musst du den VBA-Code anpassen. Folge diesen Schritten:

  1. Öffne deine Excel-Datei und gehe in den Entwicklermodus (Entwicklertools > Visual Basic).

  2. Wähle die UserForm aus, die die TextBox enthält.

  3. Doppelklicke auf die TextBox, um den Code-Editor zu öffnen.

  4. Füge den folgenden Code in das TextBox-Event MouseDown ein:

    Private Sub TextBox1_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
       With TextBox1
           .SelStart = 0
           .SelLength = Len(.Text)
       End With
    End Sub
  5. Schließe den VBA-Editor und teste die UserForm. Wenn du jetzt in die TextBox klickst, wird der gesamte Text markiert.


Häufige Fehler und Lösungen

  • Fehler: Text wird nicht markiert.

    • Stelle sicher, dass der Code im richtigen Event (MouseDown) eingefügt wurde. Überprüfe auch, ob die TextBox den richtigen Namen hat.
  • Fehler: Cursor erscheint an der falschen Stelle.

    • Achte darauf, dass du die SelStart und SelLength korrekt gesetzt hast.

Alternative Methoden

Falls du mehrere TextBoxen hast und nicht für jede einzeln den Code schreiben möchtest, kannst du eine allgemeine Methode verwenden. Füge diesen Code in ein Klassenmodul ein:

Private Sub TextBox_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    With ActiveControl
        .SelStart = 0
        .SelLength = Len(.Text)
    End With
End Sub

Rufe diese Methode für jede TextBox auf, wodurch der gesamte Text in allen TextBoxen markiert wird, wenn du darauf klickst.


Praktische Beispiele

Hier sind ein paar Beispiele, wie du den Text in einer TextBox hervorheben kannst:

  1. Einzelne TextBox:

    • Verwende den Code aus der Schritt-für-Schritt-Anleitung für eine TextBox.
  2. Mehrere TextBoxen:

    • Setze den allgemeinen Code aus der alternativen Methode für alle TextBoxen in deiner UserForm ein.
  3. TextBox in einer Tabelle:

    • Du kannst denselben Code verwenden, um Text in einer TextBox in einer Excel-Tabelle zu markieren, die mit einer UserForm verknüpft ist.

Tipps für Profis

  • Nutze die TextBox.Text-Eigenschaft, um den Text in der TextBox zu manipulieren, bevor du ihn markierst.
  • Verwende den TextBox_GotFocus-Event, um den Text automatisch zu markieren, wenn die TextBox den Fokus erhält.
  • Du kannst auch das MouseUp-Event verwenden, um den Text zu markieren, was eine sanftere Benutzererfahrung bieten kann.

FAQ: Häufige Fragen

1. Wie kann ich die TextBox in Excel aktivieren? Um die TextBox in Excel zu aktivieren, gehe in den Entwicklermodus und erstelle eine UserForm mit TextBoxen.

2. Funktioniert das auch in Excel Online? Leider sind VBA-Funktionen in Excel Online nicht verfügbar. Diese Lösung funktioniert nur in der Desktop-Version von Excel.

3. Kann ich den Text auch farblich hervorheben? Ja, du kannst die BackColor-Eigenschaft der TextBox verwenden, um sie farblich hervorzuheben, während der Text ausgewählt ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige