Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1068to1072
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
Inhaltsverzeichnis

Zellen trennen

Zellen trennen
15.04.2009 14:33:36
Claudia
Hallo zusammen,
ich stehe vor einem Problem. Ich habe eine Tabelle mit ca. 5000 Datensätzen. In einer Spalte stehen folgende Daten:
3-1 a 5
11-10 a 3
99-120 a 8
und ähnliche - gleich aufgebaute - Datensäze.
Ich muss diese Zelle jetzt irgendwie trennen, mit folgendem Ergebnis (z.B. 3-1 a 5)
3 in die erste Zelle nach rechts
- in die zweite Zeile nach rechts
1 in die dritte Zeile nach rechts
a in die vierte Zeile nach rechts
5 in die fünfte Zeile nach rechts
Habe es mit Teil versucht, aber das klappt nicht.
Kann mir jemand helfen?
Liebe Grüße
Claudia

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Text in Zeichen aufteilen
15.04.2009 14:49:04
Erich
Hi Claudia,
das geht doch mit TEIL:
 ABCDEF
13-1 a 53-1a5

Formeln der Tabelle
ZelleFormel
B1=TEIL(WECHSELN($A1;" ";""); SPALTE()-1;1)
C1=TEIL(WECHSELN($A1;" ";""); SPALTE()-1;1)
D1=TEIL(WECHSELN($A1;" ";""); SPALTE()-1;1)
E1=TEIL(WECHSELN($A1;" ";""); SPALTE()-1;1)
F1=TEIL(WECHSELN($A1;" ";""); SPALTE()-1;1)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Text in Zeichen aufteilen
15.04.2009 15:17:58
David
Hallo Erich,
das funzt aber nicht mit mehrstelligen Teilwerten!
Mein Vorschlag: (geht vielleicht auch noch kürzer)
A1: Wert B1: =TEIL(WECHSELN(A1;"-";" ");1;FINDEN(" ";WECHSELN(A1;"-";" ");1)-1) C1: =TEIL(WECHSELN(WECHSELN(A1;"-";" ");B1&" ";"");1;FINDEN(" ";WECHSELN(WECHSELN(A1;"-";" "); _ B1&" ";"");1)-1) D1: =TEIL(WECHSELN(WECHSELN(WECHSELN(A1;"-";" ");B1&" "&C1&" ";"");"-";" ");1;FINDEN(" "; _ WECHSELN(WECHSELN(WECHSELN(A1;"-";" ");B1&" "&C1&" ";"");"-";" ");1)-1) E1: =TEIL(A1;LÄNGE(B1&C1&D1)+3+1;9)


(sorry, hab zur Zeit keinen xls-HTML-Formatierer installiert)
Eine Möglichkeit für einmaligen Gebrauch wäre auch noch:
Spalte markieren, per "Suchen und Ersetzen" STRG-H alle "-" durch " " ersetzen und anschließend per "Daten-Text in Spalten" mit Trennzeichen "Leerzeichen" trennen lassen.
Gruß
David

Anzeige
AW: Text in Zeichen aufteilen
15.04.2009 15:40:38
Erich
Hi Claudia,
wie gesagt, die Formeln waren von Specke!
Und hier habe ich noch die Formel für U1 von David aufgegriffen und leicht abgewandelt:
 PQRSTU
1123-45 aa bbb123-45 aa bbb

Formeln der Tabelle
ZelleFormel
Q1=LINKS(P1;FINDEN("-";P1)-1)
S1=TEIL(P1;FINDEN("-";P1)+1;FINDEN(" ";P1)-FINDEN("-";P1))
T1=TEIL(P1;FINDEN(" ";P1)+1;FINDEN(" ";P1;FINDEN(" ";P1)+1)-FINDEN(" ";P1))
U1=TEIL(P1;LÄNGE(Q1&S1&T1)+2;99)

Das Minuszeichen in Spalte R ist doch konstant, kannst du einfach reinschreiben oder -kopieren
(wenn du es denn überhaupt brauchst).
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Zellen trennen
15.04.2009 14:55:54
Specke
Hallo Claudia,
A2: =LINKS(A1;FINDEN("-";A1)-1)
A3: -
A4: =TEIL(A1;FINDEN("-";A1)+1;FINDEN(" ";A1)-FINDEN("-";A1))
A5: =TEIL(A1;FINDEN(" ";A1)+1;FINDEN(" ";A1;FINDEN(" ";A1)+1)-FINDEN(" ";A1))
A6: {=RECHTS(A1;VERGLEICH(" ";LINKS(RECHTS(A1;SPALTE(1:1));1);0)-1)}
In A6 ist eine Matrixformel.
Gruß Specke
AW: Zellen trennen ohne Formel
15.04.2009 15:01:24
hary
Hi Claudia
eine andere Version(Dauer halbe Minute)
zb: Numern in Spalte A
SpalteA nach B kopieren/ Text in Spalten(getrennt)/vor C Spalte einfuegen/in C1 '-/kopieren/C markieren und einfuegen.
Tabellenblattname: Tabelle1
 

A

B

C

D

E

F

1

3-5 a 5

3

-

5

a

5

2

99-120 a 8

99

-

120

a

8


Gruss Hary
Anzeige
AW: Zellen trennen ohne Formel
15.04.2009 15:12:16
Claudia
Hallo Erich,
das ist aber auch mehr als nur "Teil" .... von wechseln habe ich noch nie was gehört. :-)
Was mich aber wundert. Warum klappt das nur, wenn der Begriff in Spalte A steht. In Spalte P kommt nix raus. Kann man das noch flexibler machen?
Viele Grüße
Claudia
AW: Text in Zeichen aufteilen
15.04.2009 15:22:23
Erich
Hi Claudia,
wie soll den aufgeteilt werden - wie in Zeile 1 oder wie in Zeile2 ?
(Zeile1 zeigt die Formeln von Specke, abgesehen von der Nicht-Matrixformel in U1.,
dafür habe ich http://www.excelformeln.de/formeln.html?welcher=108 verwendet.)
 PQRSTUVWXYZAA
1123-45 aa bbb123-45 aa bbb      
2123-45 aa bbb123-45aabbb

Formeln der Tabelle
ZelleFormel
Q1=LINKS(P1;FINDEN("-";P1)-1)
S1=TEIL(P1;FINDEN("-";P1)+1;FINDEN(" ";P1)-FINDEN("-";P1))
T1=TEIL(P1;FINDEN(" ";P1)+1;FINDEN(" ";P1;FINDEN(" ";P1)+1)-FINDEN(" ";P1))
U1=TEIL(P1;VERWEIS(9^9;FINDEN(" ";P1;ZEILE(P:P)))+1;9^9)
Q2=TEIL(WECHSELN($P1;" ";""); SPALTE()-SPALTE($P1); 1)
R2=TEIL(WECHSELN($P1;" ";""); SPALTE()-SPALTE($P1); 1)
S2=TEIL(WECHSELN($P1;" ";""); SPALTE()-SPALTE($P1); 1)
T2=TEIL(WECHSELN($P1;" ";""); SPALTE()-SPALTE($P1); 1)
U2=TEIL(WECHSELN($P1;" ";""); SPALTE()-SPALTE($P1); 1)
V2=TEIL(WECHSELN($P1;" ";""); SPALTE()-SPALTE($P1); 1)
W2=TEIL(WECHSELN($P1;" ";""); SPALTE()-SPALTE($P1); 1)
X2=TEIL(WECHSELN($P1;" ";""); SPALTE()-SPALTE($P1); 1)
Y2=TEIL(WECHSELN($P1;" ";""); SPALTE()-SPALTE($P1); 1)
Z2=TEIL(WECHSELN($P1;" ";""); SPALTE()-SPALTE($P1); 1)
AA2=TEIL(WECHSELN($P1;" ";""); SPALTE()-SPALTE($P1); 1)

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Text in Zeichen aufteilen
15.04.2009 15:30:01
Claudia
Hallo Erich,
wie in Zeile 1. Das klappt auch hervorragend. Eine Frage habe ich aber noch. Wie kommst Du denn an das Ergebnis in Zelle R1?
Ich sage schon einmal danke für Deine Hilfe. An die natürlichen auch eine "danke schön".
Liebe Grüße
Claudia
AW: Antwort unter David Winkler - sorry! (owT)
15.04.2009 15:55:19
Erich
ohne weiteren Text
Mit einer klitzekleinen udFkt, die nur...
16.04.2009 21:31:05
Luc:-?
...die Fktionalität der vbFkt Split für die TabBlatt-Anwendung nutzbar macht, Claudia,
geht's übrigens noch eleganter. Folgendes in ein VBE-Normalmodul deines Projektes eintragen...

Function Splitt(Bezug, Optional ByVal Trenner As String = " ")
Splitt = Split(Bezug, Trenner)
End Function


Im TabBlatt kannst du das dann in einer Matrixfml so anwenden...
B30[:F32]: {=Splitt(WECHSELN(A30;"-";" - "))}
...wenn in A30:A32 deine Texte stehen und die Splittung in B30:F32 stehen soll. Die Matrixfmln sind dabei zeilenweise anzulegen. Die Angegebene bezieht sich nur auf Zeile 30, aber alle Spalten B:F, die bei Fmleingabe in B30 ebenfalls markiert sein müssen (wdn bei MxFml-Abschluss mit [Strg]+[Umsch]+[Enter] gefüllt). Anschließend alles mit üblicher Methode in weitere Zeilen kopieren.
Wenn du mal einen anderen Trenner hast, musst du den als 2.Argument der udFkt angeben. Für ein normales Leerzeichen ist das nicht erforderlich (Standard).
Gruß Luc :-?

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige