Effektiv Sätze aus TextBox in Zellen bringen.
#1
Hallo liebe VBA Experten,

brauch mal wieder eure Hilfe. Ich habe in einer TextBox  Sätze untereinander stehen (Multiline Modus) .
Jetzt möchte ich einen CommandButton programmieren, der diese  Sätze einzeln in  Zellen untereinander auf mein Arbeitsblatt schreibt. Was ich  suche ist ein so effizienter Code wie möglich, der diese Aufgabe erledigt. Vielleicht geht so etwas ohne Schleifen oder ist mit 3 bis 4 schlauen Programmierzeilen getan.

Vielen Dank für eure Hilfe im voraus.
Top
#2
Hallo Kathrin,

reicht das?

Code:
Private Sub CommandButton1_Click()
   Dim vntText As Variant
  
   vntText = Split(TextBox1, vbCr)
   Range("A1").Resize(UBound(vntText) + 1) = WorksheetFunction.Transpose(vntText)
End Sub
Gruß Stefan
Win 10 / Office 2016
Top
#3
Hallo Stefan

und danke.

Wollte gerade noch meinen eigenen Code schreiben z.B. so
Zitat:u = Split(TextBox1.Value, Chr(13))
For i = 0 + 1 To UBound(u) + 1
Worksheets("Tabelle1").Range("G" & i).Value = u(i)
Next i

aber deiner ist zweifelsfrei besser. Danke.
Top
#4
Hallo Kathrin,

kleiner Hinweis zu deinem Code

Code:
For i = 0 + 1 To UBound(u) + 1
Worksheets("Tabelle1").Range("G" & i).Value = u(i)

das Array ist normalerweise 0-basiert und bei deiner Variante wird die erste Zeile nicht eingetragen bzw. es gibt einen Laufzeitfehler weil Ubound überschritten ist. Machs besser so

Code:
For i = 0 To UBound(u)
Worksheets("Tabelle1").Range("G" & i + 1).Value = u(i)
Gruß Stefan
Win 10 / Office 2016
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste