Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1692to1696
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

Datenauswerten

Datenauswerten
12.05.2019 05:11:52
Margit
Hallo,
ich bräuchte mal eure Hilfe beim Auswerten von Datenreihen. Zu meinen Daten in Spalte A gehören unteschiedlich viele Werte in Spalte D. Um sie besser weiter verwenden zu können bräuchte ich sie in einzelnen Zeilen zugeordnet untereinander. Hat da jemand eine Idee für mich?
LG Margit
Spalte B
1
2
...
Spalte D
22[5], 33[6], 56[5]
22[5], 33[4]
...
gewünschtes Ergebnis:
Spalte A
1
1
1
2
2
Spalte B
22
33
56
22
33
Spalte C
5
6
5
5
4

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datenauswerten
12.05.2019 07:13:17
Hajo_zi
Eine hochgeladene Arbeitsmappe erhöht die Wahrscheinlichkeit, dass Du eine Lösung für Dein Problem erhältst.
Erstelle folglich bitte eine Demomappe, aus der deine Aufgabenstellung klar erkennbar ist und lade diese hoch.
Wenn du an Stelle einer Demomappe deine Originalmappe hochladen willst, diese aber sensible Daten enthält, solltest du diese Daten anonymisieren bzw. pseudonymisieren.
Falls Du den Download des Forums nicht benutzen möchtest beachte bitte: von unsicheren Servern file-upload lade ich keine Datei herunter (lt. Einschätzung meines Virenprogramms)
in Deiner Beschreibung gibt es 2x Spalte B mit unterschiedlichen Inhalt.

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
Die Beiträge werden auch ignoriert, es erfolgt keine Antwort.
Anzeige
Daten splitten
12.05.2019 08:15:21
WF
Hi,
jetzt mal nur für Spalte A.
in A1 steht:
=B1
in A2 steht:
=WENN(LÄNGE(INDEX(D:D;A1))-LÄNGE(WECHSELN(INDEX(D:D;A1);",";))+1>ZÄHLENWENN(A$1:A1;A1);A1;A1+1)
runterkopieren
WF
AW: Daten splitten
12.05.2019 18:28:07
Margit
HAllo WF,
Danke für Deinen Tip. Ich kenne alle Funktionen die Du in Deiner Formel verbaut hast, aber sie so zu verbauen, da wäre ich nicht drauf gekommen. DANKE. Das bringt mich in Spalte A schon mal ein großes Stück weiter.
LG Margit
Mit 2 pluralen MatrixFmln und 2 UDFs geht's so, …
12.05.2019 15:08:15
Luc:-?
…Margit:
A27:A31: {=MTRANS(VSplit(VJoin(GLÄTTEN(WIEDERHOLEN(" "&B24:B25;LÄNGE(D24:D25)-LÄNGE(WECHSELN(D24:D25;",";""))+1)));;1))}
B27:C31: {=VSplit(WECHSELN(MTRANS(VSplit(VJoin(D24:D25;", ");", "));"]";"");"[";1)}

Für B24:D25= {1.""."22[5], 33[6], 56[5]";2.""."22[5], 33[4]"} ergibt sich so in …
A27:C31⇒ {1.22.5;1.33.6;1.56.5;2.22.5;2.33.4}
(Quell- und ErgebnisDaten als MatrixKonstanten dargestellt.)
ArchivLink zu den UDF-Pgmm:
VJoin (Vs1.4) & VSplit (Vs1.1) https://www.herber.de/bbs/user/99024.xlsm (DownLoad BspDatei m.UDFs)
Gruß, Luc :-?
„Der beste Beweis für intelligentes Leben im Universum ist, dass noch niemand versucht hat, Kontakt mit uns aufzunehmen.“ H.Lesch, 2018, Sonneberg
Deshalb Intelligenz steigern mit …

Anzeige
Verschon mich mit Deinem UDF-Zeug.
12.05.2019 15:39:56
WF
.
Hast Du die Frage gestellt oder Margit, ...
12.05.2019 22:12:46
Luc:-?
…Walter‽
Meine AW liefert ein vollständiges Ergebnis, Deine bestenfalls nur einen Teil davon. Außerdem beruht meine auf Deinen gelieb­ten Matrix­Fmln, wenn auch pluralen statt singularen.
Deine permanente Ablehnung von VBA und anderem grenzt langsam an Altersstarrsinn. Ich bin aber sogar noch einen Jahrgang älter als Du. Und MS hat inzwischen für beide UDFs Fktt geschaffen, die Du natürlich ebenfalls ignorierst. Die fktionieren natürlich nicht unter Xl9-14, meine UDFs aber schon. Also was soll's…‽
Weder ein normaler VBA-SubProzedur-Schreiber noch ein Nur-Standard-Fml-Verwender wird so tief in die „Berechnungsmysterien“ von Xl eintauchen wie jemand, der qualifizierte UDFs, vornehmlich für Fml-Anwendung, schreibt, wenn auch der Zweite ggf tiefer als der Erste. Der Unterschied zwischen diesen beiden VBA-Anwendungskategorien ist Dir bis heute vor lauter Ablehnung wohl entgangen…
Aber Du kannst Dich gern weiter mit Deinen MS-Steinzeit-Werkzeugen herumquälen… :->
Gruß, Luc :-?
Anzeige
AW: Mit 2 pluralen MatrixFmln und 2 UDFs geht's so, …
12.05.2019 18:34:43
Margit
Hallo Luc,
Danke für Deinen Beitrag. Ich arbeite schon sehr viele Jahre mit Excel, und auch in VBA bastele ich mir dank diesem tollen Forum einiges zusammen, aber was für mich bisher ein "Buch mit sieben Siegeln" ist, das sind die Matrix-Formeln. Ich kann es nicht erklären, aber ich steig da nicht wirklich durch. Deshalb traue ich mich auch nicht sie anzuwenden.
Sorry,
Margit
Eine MatrixFml wendet man an, …
12.05.2019 21:52:10
Luc:-?
…indem man soviel Zellen auswählt, wie für das Ergebnis benötigt wdn, Margit,
und dann die Fml in deren 1. (oben links) einträgt und mit der [Enter]-Taste bei gedrückten Tasten [Strg]+[Umsch] abschließt. Dadurch wird die Fml und ihr jeweiliges Ergebnis auf alle ausgewählten Zellen übertragen. Die Ergebnisse bilden dann einen festen Verbund, der nicht getrennt wdn kann.
Die UDFs kannst du, falls deine Version die neuesten Abo-Fktt hat, ggf durch TEXTVERKETTEN und eine auf Basis von Text-in-Spalten ersetzen. Die UDFs haben allerdings den Vorteil, dass sie auch in früheren und Nicht-Abo-Versionen fktionieren.
Luc :-?
Anzeige
...Das sähe dann bspw so aus: …
18.05.2019 16:05:13
Luc:-?
 ABCD
24
 1 22[5], 33[6], 56[5] 2 22[5], 33[4]    1225 1336 1565 2225 2334 
25
26
27
28
29
30
31
Wobei hier die Fmln so gelten:
A27:A31: {=MTRANS(VSplit(VJoin(GLÄTTEN(WIEDERHOLEN(" "&B24:B25;LÄNGE(D24:D25)-LÄNGE(WECHSELN(D24:D25;",";""))+1)));;1))}
B27:C31: {=VSplit(WECHSELN(MTRANS(VSplit(VJoin(D24:D25;", ");", "));"]";"");"[";1)}
Markiert wdn die angegebenen Bereiche, beginnend mit der erstgenannten Zelle und die jeweilige Fml dann nur in diese eingetra­gen und so abgeschlossen, wie zuvor beschrieben. Fml und alle ihre Ergebnisse wdn dann automatisch nacheinander in die markierten Zellen übernommen, beginnend mit der 1.(aktiven).
Vielleicht hilft's ja jemand Anderem…‽
Luc :-?
Anzeige
AW: Datenauswerten
12.05.2019 17:19:11
Daniel
Hi
welche Excelversion hat du denn genau?
ab Version 2016 verfügt Excel über ein zusätzliches Bearbeitungstool für Tabellen, welches für genau solche Umformungen gedacht ist und mit dem man Tabellen über Menüfunktionen umwandeln kann.
Gruß Daniel
AW: Datenauswerten
12.05.2019 18:24:22
Margit
Hallo Daniel,
Danke für Deine Antwort.
Du meinst sicher die "Text in Spalten" Funkton. Damit habe ich auch begonnen die Daten erstmal zu splitten.
Aber da ich 2 Klammern [] habe und die Funktion nur eine als Trennzeichen zuläßt hatte ich gehofft das jemand eine Makrolösung für mein Problem kennt.
Habe es auch mit Suchen ersetzen versucht
Zelle.Value = Replace(Zelle.Value, "[", ",")
aber das Makro läuft dann zu lange, da ich ja die Klammern und die Leerstellen ändern müsste.
LG Margit
Anzeige
AW: Datenauswerten
12.05.2019 18:32:13
cysu11
Hi Margit,
lade bitte deine Beispieldatei(mit mehrere Beispiele) hoch, da kann Dir leichter geholfen werden!
LG
Alexandra
AW: Datenauswerten
12.05.2019 19:00:37
Daniel
naja, TextInSpalten gibts in Excel schon seit ewigkeiten, ich meinte die Tabellenbeabeitungfunktionen, die in Excel 2010 und 2013 über das zusätzlich zu installierende Tool "PowerQuery" und ab Excel 2016 als normaler Menübestandteil verfügbar sind.
Da gibt es nämlich eine Funktion, die genau das macht, was du haben willst, nämlich "entpivotisieren."
wenn du es auf dem Klassischen Weg machen willst, dann eventuell so:
1. verteile mit TEXT IN SPALTEN und dem Komma als Trennzeichen die Werte auf einzelne Spalten.
2. ermittle, wieviele Spalten du bekommst (die größte Anzahl an Werten in einer Zeile), ich nenne die Anzahl in der Folge mal "anz" und die letzte benutze Spalte X, du musst dann da in den folgenden Formeln die entsprechenden Werte eintragen
3. in die Spalte A auf einem zweiten Tabellenblatt kommt folgende Formel:
=Index(Tabelle!B:B;Aufrunden(Zeile(A1)/anz;0))
4. in die Spalte B kommt dann die Formel:
=Index(Tabelle1!D:X);Aufrunden(Zeile(A1)/anz;0);Rest(Zeile(A1)-1;anz)+1)&""
5. diese Beiden Formeln ziehst du soweit nach unten wie benötigt (Anzahl Zeilen x Anzahl Spalten in Tabelle1)
6. kopiere Spalte A und B und füge sie an gleicher Stelle als Wert ein
7. filter mit dem Autofilter nach den Leeren Zellen in Spalte B und lösche diese
8. entferne in Spalte B mit der ERSTETZEN-Funktion das "]" durch nichts
9. wende auf die Spalte B das TEXT-IN-SPALTEN an, mit dem "[" als Trennzeichen
Gruß Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige