Das Clever-Excel-Forum.de - Treffen
findet vom 15. - 17. September 2017 in Friedrichroda /
Thüringen / Region Großer Inselsberg statt. Hotelbuchung ab sofort möglich.

Text in Spalten "auseinander nehmen"
#1
Liebe Super, super, Superuser... ich versuche verzweifelt den Text aus einer Zelle auf mehrere zu verteilen. Leider funktioniert die einfache "Text in Spalten Funktion" nicht. Der Text ist mit Zeilenumbrüchen versehen. Meine Zelle 13 I sieht so aus: 

Benutzer-ID: 123658974562
E-Mail-: muster.muster@muster.ch
Telefon-: +41771321231

Ich möchte jetzt im 13 I "Benutzer-ID:", im J die "Nr", im K "E-Mail", im L "die E-Mail Adresse", im M "Telefon" und im N die "Telefonnumme" haben....

Geht das überhaupt? Für eure Hilfe danke ich schon jetzt!

Sommerliche Grüsse
Kusi
to top
#2
Hallo Kusi!
Geht nicht, gibt es nicht ...
Entweder mit Textformeln (sehr aufwändig)
oder mittels VBA (verschachtelte Split()-Funktionen)
(Für beides mittels Zeichen(10), vbLf bzw. Chr(10) und dem Doppelpunkt)

Aber doch wohl kaum für nur eine Zelle?

Denn dafür lohnt sich die Arbeit keinesfalls.

Gruß Ralf
to top
#3
... oder quick & dirty: 
In Hilfszelle =WECHSELN(I13;ZEICHEN(10);":")
Hilfszelle kopieren, I13 markieren, Einfügen, Werte
Text in Spalten, Trennzeichen: Doppelpunkt

Gruß Ralf
to top
#4
Hi Kusi,

falls du nicht unbedingt die zugehörigen Paare (Telefon: xxx; ID: xxxx usw.) trennen musst, könnte ich dir folgende Lösung anbieten:

Tabelle3

ABCD
1Benutzer-ID: 123658974562
E-Mail-: muster.muster@muster.ch
Telefon-: +41771321231
Benutzer-ID: 123658974562E-Mail-: muster.muster@muster.chTelefon-: +41771321231
2Benutzer-ID: 99922
E-Mail-: abc.defr@muster.ch
Telefon-: 01234 - 567890
Benutzer-ID: 99922E-Mail-: abc.defr@muster.chTelefon-: 01234 - 567890
Formeln der Tabelle
ZelleFormel
B1=LINKS(WECHSELN(A1;ZEICHEN(10);"'#";2);SUCHEN(ZEICHEN(10);WECHSELN(A1;ZEICHEN(10);"'#";2))-1)
C1=TEIL(WECHSELN(A1;ZEICHEN(10);"'#";2);SUCHEN("E-";A1)-1;LÄNGE(WECHSELN(A1;ZEICHEN(10);"'#";2))-LÄNGE(RECHTS(WECHSELN(A1;ZEICHEN(10);"'#";2);LÄNGE(WECHSELN(A1;ZEICHEN(10);"'#";2))-SUCHEN("#";WECHSELN(A1;ZEICHEN(10);"'#";2);1)))-LÄNGE(LINKS(WECHSELN(A1;ZEICHEN(10);"'#";2);SUCHEN(ZEICHEN(10);WECHSELN(A1;ZEICHEN(10);"'#";2))-1))-3)
D1=RECHTS(WECHSELN(A1;ZEICHEN(10);"'#";2);LÄNGE(WECHSELN(A1;ZEICHEN(10);"'#";2))-SUCHEN("#";WECHSELN(A1;ZEICHEN(10);"'#";2);1))
B2=LINKS(WECHSELN(A2;ZEICHEN(10);"'#";2);SUCHEN(ZEICHEN(10);WECHSELN(A2;ZEICHEN(10);"'#";2))-1)
C2=TEIL(WECHSELN(A2;ZEICHEN(10);"'#";2);SUCHEN("E-";A2)-1;LÄNGE(WECHSELN(A2;ZEICHEN(10);"'#";2))-LÄNGE(RECHTS(WECHSELN(A2;ZEICHEN(10);"'#";2);LÄNGE(WECHSELN(A2;ZEICHEN(10);"'#";2))-SUCHEN("#";WECHSELN(A2;ZEICHEN(10);"'#";2);1)))-LÄNGE(LINKS(WECHSELN(A2;ZEICHEN(10);"'#";2);SUCHEN(ZEICHEN(10);WECHSELN(A2;ZEICHEN(10);"'#";2))-1))-3)
D2=RECHTS(WECHSELN(A2;ZEICHEN(10);"'#";2);LÄNGE(WECHSELN(A2;ZEICHEN(10);"'#";2))-SUCHEN("#";WECHSELN(A2;ZEICHEN(10);"'#";2);1))

Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
?mage

Misserfolg ist eine Chance, es beim
nächsten Mal besser zu machen.

(Henry Ford)
http://www.sprueche-zum-nachdenken.eu
to top
#5
Hallo

Ab XL2013 gibt es Blitzvorschau (Flash Fill).
Einfach ein oder mehrere Daten vorgeben und mit STRG-E wird die jeweilige Spalte gefüllt.

Edit:
Ich habe gerade gesehen dass der Fragesteller XL2007 verwendet.
Wir sehen uns!
... shift-del
Hinweise zu meiner Hilfe in Foren
Excel Super-Funktionen: VERWEIS(), INDEX(), WAHL()
to top
#6
Hallo Günter,

das könntest Du auch einfacher haben:

Tabelle1

ABCD
1Benutzer-ID: 123658974562
E-Mail-: muster.muster@muster.ch
Telefon-: +41771321231
Benutzer-ID: 123658974562E-Mail-: muster.muster@muster.chTelefon-: +41771321231
2Benutzer-ID: 99922
E-Mail-: abc.defr@muster.ch
Telefon-: 01234 - 567890
Benutzer-ID: 99922E-Mail-: abc.defr@muster.chTelefon-: 01234 - 567890
Formeln der Tabelle
ZelleFormel
B1=LINKS(A1;SUCHEN(ZEICHEN(10);A1)-1)
C1=LINKS(WECHSELN(A1;B1&ZEICHEN(10);"");SUCHEN(ZEICHEN(10);WECHSELN(A1;B1&ZEICHEN(10);""))-1)
D1=TEIL(A1;SUCHEN("#";WECHSELN(A1;ZEICHEN(10);"#";2));99)

Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß


Opa Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
to top
#7
... es wäre ja schön von Excel, wenn es schon so intelligent ist und das Einfügen des Zeichen(10) in den Dialog von Text in Spalten zulässt, wenn es die Daten dann auch trennen würde und nicht alles ab dem Zeichen 10 verschluckt :-(
Beim Dialog für Suchen und Ersetzen kann man das zwar auch einfügen, aber da erzeugt es gar keine Reaktion außer der Meldung, dass nichts zum Ersetzen gefunden wurde :-( ... es könnte ja so einfach sein 22
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
to top
#8
Hallo André

Ich habe gelesen dass es mit STRG-J (als Trennzeichen) funktionieren soll.
19
Wir sehen uns!
... shift-del
Hinweise zu meiner Hilfe in Foren
Excel Super-Funktionen: VERWEIS(), INDEX(), WAHL()
to top
#9
Hi Kusi,

mit einem etwas anderen Tabellenaufbau könntest du es so lösen:

Tabelle3 (2)

ABCDE
1Benutzer-ID:E-MailTelefon
2Benutzer-ID: 99922
E-Mail-: abc.defr@muster.ch
Telefon-: 01234 - 567890
99922 abc.defr@muster.ch
01234 - 567890
3Benutzer-ID: 123658974562
E-Mail-: muster.muster@muster.ch
Telefon-: +41771321231
123658974562 muster.muster@muster.ch
+41771321231
Formeln der Tabelle
ZelleFormel
C2{=LINKS(TEIL(LINKS(A2;MAX(ISTZAHL(TEIL(A2;SPALTE(1:1);1)*1)*SPALTE(1:1)));VERGLEICH(1;ISTZAHL(TEIL(A2&0;SPALTE(1:1);1)*1)*1;0);LÄNGE(A2));SUMME(1*(ISTZAHL(LINKS(TEIL(LINKS(A2;MAX(ISTZAHL(TEIL(A2;SPALTE(1:1);1)*1)*SPALTE(1:1)));VERGLEICH(1;ISTZAHL(TEIL(A2&0;SPALTE(1:1);1)*1)*1;0);LÄNGE(A2));SPALTE(1:1))*1))))}
D2=TEIL(WECHSELN(A2;":";"xx";2);SUCHEN("xx";WECHSELN(A2;":";"xx";2))+2;SUCHEN("xx";WECHSELN(A2;" ";"xx";3))-SUCHEN("xx";WECHSELN(A2;":";"xx";2))-2+3)
E2=RECHTS(WECHSELN(A2;": ";"xx";3);LÄNGE(A2)-SUCHEN("xx";WECHSELN(A2;": ";"xx";3))-1)
C3{=LINKS(TEIL(LINKS(A3;MAX(ISTZAHL(TEIL(A3;SPALTE(2:2);1)*1)*SPALTE(2:2)));VERGLEICH(1;ISTZAHL(TEIL(A3&0;SPALTE(2:2);1)*1)*1;0);LÄNGE(A3));SUMME(1*(ISTZAHL(LINKS(TEIL(LINKS(A3;MAX(ISTZAHL(TEIL(A3;SPALTE(2:2);1)*1)*SPALTE(2:2)));VERGLEICH(1;ISTZAHL(TEIL(A3&0;SPALTE(2:2);1)*1)*1;0);LÄNGE(A3));SPALTE(2:2))*1))))}
D3=TEIL(WECHSELN(A3;":";"xx";2);SUCHEN("xx";WECHSELN(A3;":";"xx";2))+2;SUCHEN("xx";WECHSELN(A3;" ";"xx";3))-SUCHEN("xx";WECHSELN(A3;":";"xx";2))-2+3)
E3=RECHTS(WECHSELN(A3;": ";"xx";3);LÄNGE(A3)-SUCHEN("xx";WECHSELN(A3;": ";"xx";3))-1)

Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
?mage

Misserfolg ist eine Chance, es beim
nächsten Mal besser zu machen.

(Henry Ford)
http://www.sprueche-zum-nachdenken.eu
to top
#10
Hi Edgar,


Zitat:das könntest Du auch einfacher haben:

Es existiert ein Interesse an der generellen Rezession der Applikation relativ primitiver Methoden komplementär zur Favorisierung adäquater komplexer Algorithmen. Wink 85

Hab' gerade nochmals einen Vprschlag gepostet - Vereinfachungen werden gerne angenommen.
?mage

Misserfolg ist eine Chance, es beim
nächsten Mal besser zu machen.

(Henry Ford)
http://www.sprueche-zum-nachdenken.eu
to top


Gehe zu:


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