Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1224to1228
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Text aus mehreren Textboxen in eine Zelle
Krabbe
Hallo,
ich habe folgendes Problem. Ich füge mit folgendem Code Text aus Textboxen einer UserForm in eine Zelle ein.
Sheets("Daten").Cells(erste_freie_Zeile, 8) = txtMenge1.Text & Chr(10) _
& txtMenge2.Text & Chr(10) _
& txtMenge3.Text & Chr(10) _
& txtMenge4.Text & Chr(10) _
& txtMenge5.Text & Chr(10) _
& txtMenge6.Text & Chr(10) _
& txtMenge7.Text & Chr(10) _
& txtMenge8.Text & Chr(10) _
& txtMenge9.Text & Chr(10) _
& txtMenge10.Text & Chr(10) _
& txtMenge11.Text & Chr(10) _
& txtMenge12.Text & Chr(10) _
& txtMenge13.Text & Chr(10) _
& txtMenge14.Text & Chr(10) _
& txtMenge15.Text
Mein Problem ist, dass nicht immer alle Textboxen mit Text gefüllt werden. Ich bekomme aber grundsätzlich alle Zeilenumbrüche in meiner Zelle. Wie kann ich die überflüssigen Zeilenumbrüche entfernen ?
Über Hilfe hierzu würde ich mich sehr freuen.

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Text aus mehreren Textboxen in eine Zelle
04.08.2011 10:20:36
Tino
Hallo,
durchlaufe die Textboxen in einer Schleife und prüfe in dieser ob was drin steht und
führen diese zu einem String in einer Variablen zusammen.
Wo stehen diese Textboxen?
Gruß Tino
AW: Text aus mehreren Textboxen in eine Zelle
04.08.2011 10:29:44
Krabbe
Hallo Tino,
danke für die schnelle Antwort. Da meine VBA-Kenntnisse noch nicht sehr ausgeprägt sind hättest Du ein Beispiel für mich bezüglich der Schleife und der Zusammenführung in einer Variable?
die Textboxen verwende ich in einer Userform. Es gibt auch noch jeweils 15 Textboxen mit Artikelnummer(txtArtikelNr1-15) und Bezeichnung(txtBezeichnung1-15).
Vielen Dank für Deine Hilfe im Voraus.
Gruß
Matthias
Anzeige
Beispiel mit Array...
04.08.2011 10:33:44
Tino
Hallo,
hier ein Beispiel- Code
In diesem Code fehlt die Definierung für erste_freie_Zeile, weiß nicht wo Du diese ermittelst!
Dim ArrayWerte(), n%, nCount&

Redim Preserve ArrayWerte(14)

For n = 1 To 15 'Anzahl TextBoxen 1 bis 15 
    If Me("txtMenge" & n) <> "" Then
        ArrayWerte(nCount) = Me("txtMenge" & n)
        nCount = nCount + 1
    End If
Next n

If nCount > 0 Then
    Redim Preserve ArrayWerte(nCount - 1)
    Sheets("Daten").Cells(erste_freie_Zeile, 8) = _
    Join(ArrayWerte, Chr(10))
End If
Gruß Tino
Anzeige
AW: Beispiel mit Array...
04.08.2011 10:42:36
Krabbe
Hallo Tino,
hat super funktioniert, und ich probiere schon ewig rum.
Also nochmal Danke :-)
Gruß
Matthias
Codezeilen sparen mit einer Function
04.08.2011 11:14:53
Tino
Hallo,
wenn Du es schlau mit einer Function machst, kannst Du einige Codezeilen sparen.
Beispiel
Private Sub CommandButton1_Click()
Dim erste_freie_Zeile&

With Sheets("Daten")
    'erste freie Zeile ? 
    erste_freie_Zeile = .Cells(.Rows.Count, 8).End(xlUp).Row + 1
    
    .Cells(erste_freie_Zeile, 8) = Text_Aus_TxT_Box("txtMenge")
    .Cells(erste_freie_Zeile, 9) = Text_Aus_TxT_Box("txtArtikelNr")
End With


End Sub

Private Function Text_Aus_TxT_Box(strTextBoxName$)
Dim ArrayWerte(), n%, nCount&
Redim Preserve ArrayWerte(14)

For n = 1 To 15 'Anzahl TextBoxen 1 bis 15 
    If Me(strTextBoxName & n) <> "" Then
        ArrayWerte(nCount) = Me(strTextBoxName & n)
        nCount = nCount + 1
    End If
Next n

If nCount > 0 Then
    Redim Preserve ArrayWerte(nCount - 1)
    Text_Aus_TxT_Box = _
    Join(ArrayWerte, Chr(10))
End If
End Function
Gruß Tino
Anzeige
AW: Text aus mehreren Textboxen in eine Zelle
04.08.2011 10:36:18
Matthias
Hallo
probiers mal so: (nicht getestet)
Sheets("Daten").Cells(erste_freie_Zeile, 8) = txtMenge1.Text & Chr(10) _
& txtMenge2.Text & Chr(10) _
& txtMenge3.Text & Chr(10) _
& txtMenge4.Text & Chr(10) _
& txtMenge5.Text & Chr(10) _
& txtMenge6.Text & Chr(10) _
& txtMenge7.Text & Chr(10) _
& txtMenge8.Text & Chr(10) _
& txtMenge9.Text & Chr(10) _
& txtMenge10.Text & Chr(10) _
& txtMenge11.Text & Chr(10) _
& txtMenge12.Text & Chr(10) _
& txtMenge13.Text & Chr(10) _
& txtMenge14.Text & Chr(10) _
& txtMenge15.Text
Sheets("Daten").Cells(erste_freie_Zeile, 8) = Application.Substitute(Sheets("Daten").Cells(erste_freie_Zeile, 8), Chr(10), " ")
kleines Beispiel (ähnlich aufgebaut)
https://www.herber.de/bbs/user/76027.xls
Gruß Matthias
Anzeige

387 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige