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

Userform-Textbox Text formatieren

Forumthread: Userform-Textbox Text formatieren

Userform-Textbox Text formatieren
24.07.2002 13:26:51
Klaus
Wie sag ich´s Excel, dass der Inhalt einer Textbox auf Leerzeilen geprüft wird und wenn vorhanden, diese Leerzeilen vor dem Übertragen des Inhalts der Textbox in eine Tabelle gelöscht werden, so das nur der reine Text übertragen wird.
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Userform-Textbox Text formatieren
24.07.2002 14:06:05
@lex
Hallo Klaus.
Schau mal bei Recherche unter Listbox / Combobox (ich gehe davon aus, dass Du nicht Textbox meinst) bei Hans' Beispielen
Dort steht auf jeden Fall etwas.

VG,
Alex

Re: Userform-Textbox Text formatieren
24.07.2002 15:01:38
Klaus
Hallo Alex,

vielen Dank für die schnelle Antwort.
Allerdings meinte ich wirklich Textbox (Textfeld).
Ich muss unter Zuhilfenahme einer Userform Text in dieses Feld durch den Benutzer eintragen lassen.
Dabei möchte ich vermeiden, dass, wenn der Benutzer ausser dem Text auch noch Leerzeilen in diese Textbox einfügt, diese beim Übertragen des Inhalts dieser Textbox in eine Zelle (mit Zeilenumbruch) übernommen werden.

Gruss Klaus

Anzeige
Sorry. Da muss ich passen :-( (n/t)
24.07.2002 15:17:00
@lex
-
Re: Userform-Textbox Text formatieren
24.07.2002 15:49:08
L.Vira
wenn leerzeilen vorhanden sind, müssen also zwei Chr(10)
oder Chr(13) aufeinanderfolgen, die kannst du auslesen und ggf. löschen.
Danke. Es funktioniert prima (n/t)
25.07.2002 15:09:58
Klaus
-
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige

Infobox / Tutorial

Userform-Textbox Text formatieren in Excel


Schritt-für-Schritt-Anleitung

Um den Inhalt einer Textbox in einer Userform zu formatieren und Leerzeilen zu entfernen, kannst du den folgenden VBA-Code verwenden. Dieser Code prüft den Text in der Textbox und entfernt alle überflüssigen Leerzeilen, bevor der Text in eine Zelle übertragen wird.

  1. Öffne den VBA-Editor in Excel (ALT + F11).
  2. Füge eine Userform hinzu und platziere eine Textbox (nennen wir sie Textbox1) sowie einen Button.
  3. Doppelklicke auf den Button und füge den folgenden Code hinzu:
Private Sub CommandButton1_Click()
    Dim cleanedText As String
    cleanedText = CleanText(Textbox1.Text)
    Sheets("Tabelle1").Range("A1").Value = cleanedText
End Sub

Function CleanText(inputText As String) As String
    Dim lines() As String
    Dim result As String
    Dim i As Integer

    lines = Split(inputText, vbLf) ' Zeilenumbrüche im Text finden
    For i = LBound(lines) To UBound(lines)
        If Trim(lines(i)) <> "" Then ' Leere Zeilen ignorieren
            result = result & lines(i) & vbLf
        End If
    Next i

    CleanText = Trim(result) ' Entferne überflüssige Leerzeilen am Ende
End Function
  1. Schließe den VBA-Editor und teste die Userform.

Häufige Fehler und Lösungen

  • Fehler: Der Text wird nicht korrekt in die Zelle übertragen.

    • Lösung: Stelle sicher, dass die Referenz zur Zelle korrekt ist. Überprüfe ebenfalls, ob die Userform aktiv ist.
  • Fehler: Leerzeilen werden nicht entfernt.

    • Lösung: Überprüfe den Code in der CleanText-Funktion und stelle sicher, dass vbLf (Zeilenumbruch) korrekt verwendet wird.

Alternative Methoden

Eine alternative Methode besteht darin, anstelle einer Userform eine einfache Eingabeaufforderung zu verwenden. Du kannst den Text auch direkt über eine InputBox abfragen und dann mit ähnlichem Code verarbeiten.

Sub InputBoxExample()
    Dim userInput As String
    Dim cleanedInput As String

    userInput = InputBox("Bitte Text eingeben:")
    cleanedInput = CleanText(userInput)
    Sheets("Tabelle1").Range("A1").Value = cleanedInput
End Sub

Praktische Beispiele

Angenommen, du möchtest den Text aus der Textbox in die Zelle A1 auf "Tabelle1" übertragen, ohne Leerzeilen:

  1. Benutzer gibt in die Textbox ein:

    Dies ist ein Test.
    
    Dies ist eine weitere Zeile.
    
  2. Nach dem Drücken des Buttons wird in Zelle A1 folgendes stehen:

    Dies ist ein Test.
    Dies ist eine weitere Zeile.

Tipps für Profis

  • Nutze die Trim-Funktion, um führende und nachfolgende Leerzeichen zu entfernen, bevor du den Text verarbeiten.
  • Experimentiere mit verschiedenen Textformatierungen in VBA, um das Aussehen des Textes in deiner Userform zu verbessern.
  • Überlege, ob du zusätzliche Features wie das Hinzufügen von Validierungen für den eingegebenen Text einbauen möchtest.

FAQ: Häufige Fragen

1. Wie kann ich die Textbox anpassen? Du kannst die Eigenschaften der Textbox im Eigenschaftenfenster der Userform anpassen, um beispielsweise die Schriftgröße oder -farbe zu ändern.

2. Funktioniert dieser Code auch in Excel 365? Ja, dieser VBA-Code funktioniert in Excel 365 sowie in anderen Versionen von Excel, die VBA unterstützen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige