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

Forumthread: Zeilenumbrüche aus Zelle in TextBox?

Zeilenumbrüche aus Zelle in TextBox?
06.05.2015 11:52:26
Lisa
Hallo zusammen,
ich habe meiner TextBox1 beigebracht, Mehrspaltig auch in die Tabellenzellen zu schreiben.
Private Sub CommandButton1_Click()
With Sheets(11)
.Unprotect
.Range("G13:O15") = Replace(TextBox1.Text, vbCr, "")
.Protect
End With
End Sub
Wie aber gelingt es mir den Text aus der Zelle wieder in die TextBox1 zuholen?
So, wie ich es versuche, wird es nichts, vermutlich muss der Zeilenumbruch auch berücksichtigt werden.
Wenn jemand hierzu eine Idee hat, würde ich mich über jede Hilfe freuen.
Private Sub UserForm_Initialize()
With UF_Zusatz
.Caption = "Zusatzangaben"
If Sheets(11).Range("G13:O15")  "" Then
.TextBox1 = Sheets(11).Range("G13:O15")
End If
.Show
End With
End Sub

Liebe Grüße Lisa

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Zeilenumbrüche aus Zelle in TextBox?
06.05.2015 12:14:17
Nepumuk
Hallo,
das:
If Sheets(11).Range("G13:O15") "" Then
kann schon nicht funktionieren denn ein Range aus mehreren Zellen gibt ein Array zurück. Das kannst du nicht mit einem einzelnen Wert vergleichen. Genauso wenig kannst du so ein Array an eine TextBox übergeben.
Steht denn in allen Zellen das selbe? Denn damit:
.Range("G13:O15") = Replace(TextBox1.Text, vbCr, "")
trägst du in allen 27 Zellen das selbe ein.
Beschreib einfach mal was du vor hast, dann findet sich sicher auch eine Lösung.
Gruß
Nepumuk

Anzeige
AW: Zeilenumbrüche aus Zelle in TextBox?
06.05.2015 12:14:25
Daniel
Hi
sollte es sich bei G13:O15 um einen Zellverbund handeln, so reicht es aus, die linke obere Zelle (G13) zu verwenden.
Sowohl beim Schreiben, als auch beim Lesen des Zellinhaltes.
Ansonsten müsstest du die Zellinhalte der einzelnen Zellen zuerst zu einem Textstring verketten und dann diesen Textstring in die Zelle schreiben.
Ein zweidimensionalem Array, wie es die Werte von G13:O15 bilden, kann weder die Textbox verarbeiten, noch der Vergleich "".
ansonsten sollte es kein Problem geben.
die harten Zeilenumbrüche (Zeichen(10), vbLF, ALT+ENTER) werden dann auch in der Textbox angezeigt (vorausgesetzt die Eigenschaft MultiLine = True ist gesetzt)
bei den weichen Umbrüchen (Rand der Zelle ist erreicht) ist natürlich die Grösse der Textbox ausschlaggebend, nicht die der Zelle.
Sollten Zelle und Textbox unterschiedlich breit sein oder unterschiedliche Schriftarten oder -grössen verwenden, ergibt sich für die weichen Umbrüche natürlich ein anderes Bild.
Gruß Daniel

Anzeige
AW: Zeilenumbrüche aus Zelle in TextBox?
06.05.2015 12:14:33
Nepumuk
Hallo,
das:
If Sheets(11).Range("G13:O15") "" Then
kann schon nicht funktionieren denn ein Range aus mehreren Zellen gibt ein Array zurück. Das kannst du nicht mit einem einzelnen Wert vergleichen. Genauso wenig kannst du so ein Array an eine TextBox übergeben.
Steht denn in allen Zellen das selbe? Denn damit:
.Range("G13:O15") = Replace(TextBox1.Text, vbCr, "")
trägst du in allen 27 Zellen das selbe ein.
Beschreib einfach mal was du vor hast, dann findet sich sicher auch eine Lösung.
Gruß
Nepumuk

Anzeige
AW: Zeilenumbrüche aus Zelle in TextBox?
06.05.2015 12:14:35
Daniel
Hi
sollte es sich bei G13:O15 um einen Zellverbund handeln, so reicht es aus, die linke obere Zelle (G13) zu verwenden.
Sowohl beim Schreiben, als auch beim Lesen des Zellinhaltes.
Ansonsten müsstest du die Zellinhalte der einzelnen Zellen zuerst zu einem Textstring verketten und dann diesen Textstring in die Zelle schreiben.
Ein zweidimensionalem Array, wie es die Werte von G13:O15 bilden, kann weder die Textbox verarbeiten, noch der Vergleich "".
ansonsten sollte es kein Problem geben.
die harten Zeilenumbrüche (Zeichen(10), vbLF, ALT+ENTER) werden dann auch in der Textbox angezeigt (vorausgesetzt die Eigenschaft MultiLine = True ist gesetzt)
bei den weichen Umbrüchen (Rand der Zelle ist erreicht) ist natürlich die Grösse der Textbox ausschlaggebend, nicht die der Zelle.
Sollten Zelle und Textbox unterschiedlich breit sein oder unterschiedliche Schriftarten oder -grössen verwenden, ergibt sich für die weichen Umbrüche natürlich ein anderes Bild.
Gruß Daniel

Anzeige
AW: Zeilenumbrüche aus Zelle in TextBox?
06.05.2015 12:31:20
fcs
Hallo Lisa,
verbundenen Zellen haben halt so ihre Tücken.
Private Sub UserForm_Initialize()
With UF_Zusatz
.Caption = "Zusatzangaben"
If Sheets(11).Range("G13:O15").Range("A1")  "" Then
.TextBox1 = Sheets(11).Range("G13:O15").Range("A1").Text
End If
'.Show   '?  - das gehört hier normal nicht hin außer dieser Code steht nicht unter  _
UF_Zusatz
End With
End Sub

Anzeige
AW: Zeilenumbrüche aus Zelle in TextBox?
06.05.2015 12:36:30
Lisa
Hallo Nepumuk, halle Daniel, als Erstes, vielen Dank für die schnellen Antworten.
Zum Ausgangspunkt, Range("G13:O15") ist ein Zellenverbund.
Die TextBox ist ebenfalls korrekt eingestellt.
Ich habe es anfänglich mit Sheets(11).cells(13, 7) versucht, so dachte ich auch, dass dann der Zelleninhalt aus dem Zellenverbund zurückgegeben wird.
Nach Euren Antworten nun noch einmal getestet, funktioniert es auch.
Ich zweifel an mir selbst, keine Ahnung was da gerade nicht funktionierte, wo ich mir selbst im Wege stand, der Fehler ist nun behoben. Peinlich, peinlich.
Vielen, vielen Dank und Entschuldigung.
LG Lisa
Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

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