Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: übernahme der Textbox in ein Label UserForm

übernahme der Textbox in ein Label UserForm
lisa
Hallo
Mein Versuch eine UserForm anzulegen nimmt immermehr Gestallt an. Allerdings erstellen sich immer wieder neue Fragen die ich allein nicht hinbekomme und mich deshalb wieder an euch wende.
Mein Problem heute.
Ich habe verschiedene Label und Textboxen und übernehme die Daten in andere Label der gleichen UserForm.
Private Sub Label47_Click()
Me.TextBox5.Caption = Me.Label47.Text
End Sub

Hört sich bescheuert an aber für die ANwendung erforderlich.
Nun meine Frage
Gibt es eine Möglichkeit die Daten aus mehreren Label oder TextBoxen in nur einem anderen Label zu übergeben?
Private Sub Label47_Click()
Me.TextBox5.Caption = Me.Label47.Text
Me.TextBox6.Caption = Me.Label47.Text
Me.TextBox3.Caption = Me.Label47.Text
MeLabel1.Caption = Me.Label47.Text
End Sub

Ich habe es versucht aber der Labelinhalt wird immer wieder überschrieben. Kann mann das ändern?
Gruß Lisa
Anzeige

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

Betreff
Benutzer
Anzeige
AW: übernahme der Textbox in ein Label UserForm
05.11.2009 09:26:45
hary
Hi Lisa
Label147 = TextBox1 & " " & TextBox2 & " " & usw.
Leerzeichen wegen Abstand
meinst Du so?
gruss hary
AW: übernahme der Textbox in ein Label UserForm
05.11.2009 17:52:27
lisa
Hallo hary
Danke für die schnelle Antwort
Naja, das würde wohl funktionieren, aber gemeint habe ich es so:
Ich geb in einer Textbox etwas ein und den Wert übergebe ich in das Label.
Nun springe ich in die nächste Textbox, und übergebe den Wert auch an das gleiche Label.
Jetzt passiert folgendes. Der erste Wert wird vom zweiten Wert überschrieben, dass sollte so nicht sein.
Es würde mich freuen wenn es einen weg gibt beide anzeigen zu lassen und nicht nur alles in einer Zeile, schön wäre es wenn hier, wenn das Label in der Breite beschrieben ist, ein automatischer Zeilenumbruch statt findet.
Wenn das umzusetzen wäre, dass wäre nach meinem Geschmack.
Danke Lisa
Anzeige
AW: übernahme der Textbox in ein Label UserForm
05.11.2009 18:24:00
hary
Hi Lisa
Hier habe ich mal das Ereigniss Exit der TextBoxen genommen.
Aber Prinzip ist dasselbe(Label1.Caption = Label1.Caption & " " & TextBox2). Der Zeilenumbruch geht automatisch(Wordwrap = True).

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Label1.Caption = TextBox1
End Sub
Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Label1.Caption = Label1.Caption & " " & TextBox2
End Sub
Private Sub TextBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Label1.Caption = Label1.Caption & " " & TextBox3
End Sub

Gruss hary
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Übernahme der Textbox in ein Label in einer UserForm


Schritt-für-Schritt-Anleitung

  1. Erstelle die UserForm: Öffne den VBA-Editor (Alt + F11), füge eine neue UserForm hinzu und platziere die benötigten TextBoxen und Labels.

  2. Füge die TextBoxen hinzu: Erstelle mindestens zwei TextBoxen, in die Du Werte eingeben möchtest, und ein Label, in das die Werte übernommen werden sollen.

  3. Programmiere das Übernehmen der Werte:

    • Verwende das Exit-Ereignis der TextBoxen, um die Werte zu übernehmen, ohne dass sie überschrieben werden. Der Code dafür könnte wie folgt aussehen:
      
      Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
      Label1.Caption = TextBox1
      End Sub

    Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean) Label1.Caption = Label1.Caption & " " & TextBox2 End Sub

    
    - Achte darauf, dass die `WordWrap`-Eigenschaft des Labels auf `True` gesetzt ist, damit die Texte in mehreren Zeilen angezeigt werden können.

Häufige Fehler und Lösungen

  • Problem: Der Inhalt des Labels wird immer wieder überschrieben.
    Lösung: Stelle sicher, dass Du den bestehenden Text des Labels mit dem neuen Text verknüpfst, anstatt ihn zu ersetzen. Verwende den Operator & für die Verkettung.

  • Problem: Zeilenumbruch funktioniert nicht.
    Lösung: Überprüfe, ob die WordWrap-Eigenschaft des Labels auf True gesetzt ist.


Alternative Methoden

Eine alternative Methode zur Übernahme der Texte in das Label wäre die Verwendung eines Arrays, um die Texte zu sammeln und dann im Label anzuzeigen. Hier ein Beispiel:

Dim texts() As String
Dim i As Integer

Private Sub TextBox_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    ReDim Preserve texts(i)
    texts(i) = TextBox.Text
    i = i + 1
    Label1.Caption = Join(texts, vbCrLf) ' Zeilenumbruch zwischen den Texten
End Sub

Praktische Beispiele

Hier ist ein einfaches Beispiel für eine UserForm mit zwei TextBoxen und einem Label:

  1. TextBox1: Benutzer gibt den ersten Namen ein.
  2. TextBox2: Benutzer gibt den zweiten Namen ein.
  3. Label1: Das Label zeigt beide Namen in einer Zeile an.

Der Code könnte folgendermaßen aussehen:

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    Label1.Caption = TextBox1
End Sub

Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    Label1.Caption = Label1.Caption & " " & TextBox2
End Sub

Tipps für Profis

  • Nutze die Trim-Funktion: Wenn Du die Texte übernimmst, solltest Du Trim verwenden, um überflüssige Leerzeichen zu entfernen:

    Label1.Caption = Trim(Label1.Caption & " " & TextBox2)
  • Fehlerbehandlung: Implementiere eine grundlegende Fehlerbehandlung, um sicherzustellen, dass die UserForm stabil läuft, auch wenn unerwartete Eingaben gemacht werden.


FAQ: Häufige Fragen

1. Frage
Wie kann ich die Texte aus mehreren TextBoxen in einem Label zusammenfassen?
Antwort: Du kannst das Exit-Ereignis jeder TextBox verwenden, um die Texte zu verknüpfen, wie im obigen Beispiel gezeigt.

2. Frage
Kann ich auch Zahlen in das Label übernehmen?
Antwort: Ja, Du kannst Zahlen in die TextBoxen eingeben, die dann ebenfalls im Label angezeigt werden können. Achte darauf, sie als Strings zu behandeln, um Komplikationen zu vermeiden.

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