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

TextVariable schnell in Spalten splitten

TextVariable schnell in Spalten splitten
01.08.2013 14:25:00
Thomas
Hallo,
ich habe in einem Arbeitsblatt in Spalte 1 Texte stehen. (100 Zeilen)
Wenn ich die Texte möglichst schnell in die Spalten dahinter exportieren will, gibt es da eine schnellere Möglichkeit als

For y=1 To 100
v0 = Cells(y,1)
For x = 1 To Len(v0)
Cells(y, x+1) = Mid(v0, x, 1)
Next x
Next y
Das geht einwandfrei, dauert aber etwas, geht das schneller?
Tommi

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

Betreff
Datum
Anwender
Anzeige
AW: TextVariable schnell in Spalten splitten
01.08.2013 14:54:54
UweD
Hallo
Application.ScreenUpdating = False

hilft schon mal.
Bau das vor die erste Schleife ein
Gruß UweD

AW: TextVariable schnell in Spalten splitten
01.08.2013 15:46:34
Thomas
Hallo UweD,
danke für den Tip - ja das bringt immer einiges an Geschwindigkeit bei solchen Operationen. Das habe ich aber sowieso immer direkt hinter dem Var-Definitionsblock stehen (auskommentiert) und aktiviere es, wenn der Code richtig läuft.
Hallo NoNet,
der Code klappt perfekt - dummerweise habe ich gedacht ich könnte Ihn selber anpassen ;) - das der Extrakt erst ab Spalte 2 passieren soll, war nur dem Umstand geschuldet, das ich zum Test-Vergleich den Komplett-Text noch in Spalte 1 stehen lassen wollte.
Nachdem alles funktioniert kann ich die Spalte 1 mit dem Gesamttext nun aber auch wieder löschen.
Mit B1->A1 und entfernen des -1

With [A1:ZZ100]
.FormulaR1C1 = "=mid(RC1,column(),1)"
.Value = .Value
End With
klappt leider nicht direkt... Geht das überhaupt, oder muss man die Spalte 1 danach einfach manuell löschen?
Aber selbst damit wäre das schon perfekt :)
LG,
Tommi

Anzeige
Text nach Splitten nach links verschieben
01.08.2013 16:21:01
NoNet
Hallo Tommi,
am einfachsten klappt das, wenn Du den Text nach dem Splitvorgang nach links verschiebst - hier der Code :
Sub TextSplitten()
With [B1:ZZ100]
.FormulaR1C1 = "=mid(RC1,column()-1,1)"
.Value = .Value
.Cut [A1]
.EntireColumn.AutoFit
End With
End Sub
Salut, NoNet

AW: Text nach Splitten nach links verschieben
01.08.2013 16:32:24
Thomas
Huhu NoNet,
komisch, also wenn ich den Code so übernehme, dann passieren eigenartige Dinge, die Spalte 1 wird megabreit - wenn ich aber die Autofit-Anweisung rauslasse, dann passt alles bestens.
Ich setzte aber eh schon Spaltenbreite global auf 1.14 und auch Schriftart und Größe - passt also alles nun genau so wie ich es mir gewünscht habe
DANKE nochmal!
LG,
Tommi

Anzeige
VBA : Text zeichenweise in Spalten splitten
01.08.2013 15:00:56
NoNet
Hallo Tommi,
hier eine Lösung ohne Schleife - der Code berücksichtigt Texte mit einer Länge von max 26*26 (also 676) Zeichen :
Sub TextSplitten()
With [B1:ZZ100]
.FormulaR1C1 = "=mid(RC1,column()-1,1)"
.Value = .Value
End With
End Sub
Gruß, NoNet
Hast Du Interesse, andere Excel-Begeisterte kennenzulernen ? - Dann komme zum
Exceltreffen 11.-13.10.2013 in Duisburg

http://www.exceltreffen.de/index.php?page=230
Anmeldungen sind noch bis in Kürze möglich ! - Schau doch mal rein !

Anzeige

362 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige