Zum Inhalt springen

[Excel] Suchwerte aus Matrix Komma-separiert in einzelne Zelle?


Empfohlene Beiträge

Geschrieben (bearbeitet)

Ich suche eine Formel, die verschiedene Rückgabewerte (Zellinhalte mehrerer Zellen, ausschließlich aber Text (einzelne Wörter oder durch Leerzeichen getrennte Wörter als Wortgruppe)) alphabetisch sortiert und durch Kommata getrennt in eine einzelne Zelle zu schreiben.

Beispiel:

Quelltabelle:

[table=class: grid, align: left]

[tr]

[td]Objekt[/td]

[td]Eigenschaft 1[/td]

[td]Eigenschaft 2[/td]

[/tr]

[tr]

[td]Baum[/td]

[td]sehr groß[/td]

[td]vielblättrig[/td]

[/tr]

[tr]

[td]Kleiner Strauch[/td]

[td]fruchtig[/td]

[td]strauchig[/td]

[/tr]

[tr]

[td]Strauch[/td]

[td]groß[/td]

[td]strauchig[/td]

[/tr]

[/table]

Zieltabelle:

[table=class: grid, align: left]

[tr]

[td]Eigenschaft[/td]

[td]Objekte[/td]

[/tr]

[tr]

[td]fruchtig[/td]

[td]Kleiner Strauch[/td]

[/tr]

[tr]

[td]sehr groß[/td]

[td]Baum[/td]

[/tr]

[tr]

[td]strauchig[/td]

[td]Kleiner Strauch, Strauch[/td]

[/tr]

[tr]

[td]vielblättrig[/td]

[td]Baum[/td]

[/tr]

[/table]

Quell- und Zieltabelle sind jeweils alphabetisch nach Spalte 1 ('Objekt' bzw. 'Eigenschaften') sortiert, die Eigenschaften in der Quelltabelle sind nach einem fest vorgelegten Schema verteilt und nicht alphabetisch sortiert (ist auch nicht nötig), die einzelnen Einträge in Spalte 2 der Zieltabelle (die einzelnen Objekte in Spalte 'Objekte') sollen aber zwangsläufig innerhalb jeder Zelle alphabetisch sortiert sein. Die Formel müßte also spaltenweise (Spalten 2-3) jede Zeile nach einem bestimmten Begriff (hier die Eigenschaft der Objekte, effektiv würde ich hier die Zellinhalte der Zieltabelle-Spalte 1 übergeben) durchsuchen und bei einem Treffer den Zellinhalt von Quelltabelle-Spalte 1 an Zieltabelle-Spalte 2 übermitteln (da die Quelltabelle-Spalte 1 bereits alphabetisch sortiert ist, sind durch diese Vorgehensweise zwangsläufig auch die Einträge von Zieltabelle-Spalte 2 alphabetisch sortiert. Würde die Formel Zeilenweise jede Spalte durchsuchen, müßte man nachträglich sortieren.

Google hat bisher noch keine brauchbaren Ergebnisse geliefert, vllt. weiß ja jemand von Euch Rat.

Problem Nr. 2: Bedingte Formatierung der Quelltabelle-Spalten 2-3 unter Zuhilfename einer SuFu (z.B: Sverweis()+Finden() - Problem hier ist aber, daß Finden bei 'Strauch' auch alle 'Kleiner Strauch' findet). Lösungsansatz: eine Kombination aus SVerweis(), Index() und Indirekt() *oder* Benutzung von Steuerzeichen (Textanfang und Textende - 'Zeichen(2)' und 'Zeichen(3)' funktionieren leider nicht). Leider fehlt mir bei beiden Ansätzen das Wissen, um das Zeug ins rechte Licht zu rücken...

Ich bin für jede Idee dankbar.

Bearbeitet von colton
Geschrieben (bearbeitet)

Eine Idee:

Da MS-Excel eine Software zum Zweck zur Durchführung von Kalkulationen ist, sind die Stärken dieser eben unter der Verarbeiten von Zahlen zu finden ;)

Ein klassisches Werkzeug zur Realisierung Deiner Aufgabenstellung nennt sich RDBMS ;);)!

.oO( ich gehe auch nicht zum Tischler und sage: Bau mir bitte einen Kühlschrank)

Ohne mir das genauer zu betrachten, gehe ich dennoch davon aus, dass die Aufgabenstellung mit einer Tabellenkalkulation nicht zu lösen ist (auch nicht mit MS-Excel) ... jedenfalls nicht im Bereich von Formeln ;)

Bearbeitet von uenetz
Geschrieben (bearbeitet)

Quelltabelle:

[table=class: grid, align: left]

[tr]

[td][/td]

[td]A[/td]

[td]B[/td]

[td]C[/td]

[/tr]

[tr]

[td]1[/td]

[td]Objekt[/td]

[td]Eigenschaft 1[/td]

[td]Eigenschaft 2[/td]

[/tr]

[tr]

[td]2[/td]

[td]Baum[/td]

[td]sehr groß[/td]

[td]vielblättrig[/td]

[/tr]

[tr]

[td]3[/td]

[td]Kleiner Strauch[/td]

[td]fruchtig[/td]

[td]strauchig[/td]

[/tr]

[tr]

[td]4[/td]

[td]Strauch[/td]

[td]groß[/td]

[td]strauchig[/td]

[/tr]

[/table]

Zieltabelle:

[table=class: grid, align: left]

[tr]

[td][/td]

[td]G[/td]

[td]H[/td]

[/tr]

[tr]

[td]1[/td]

[td]Eigenschaft[/td]

[td]Objekte[/td]

[/tr]

[tr]

[td]2[/td]

[td]fruchtig[/td]

[td]=WENN(WVERWEIS($G2;$J:$BM;2;FALSCH)="x";$J$2;"")&WENN(UND(K2="x";ZÄHLENWENN($K$3:$K$99;"x")>0);", ";"")&WENN(WVERWEIS($G2;$J:$BM;3;FALSCH)="x";$J$3;"")&WENN(UND(ZÄHLENWENN($K$2:$K$3;"x")>0;ZÄHLENWENN($K$4:$K$99;"x")>0);", ";"")[/td]

[/tr]

[tr]

[td]3[/td]

[td]groß[/td]

[td]Strauch[/td]

[/tr]

[tr]

[td]4[/td]

[td]sehr groß[/td]

[td]Baum[/td]

[/tr]

[tr]

[td]5[/td]

[td]strauchig[/td]

[td]Kleiner Strauch, Strauch[/td]

[/tr]

[tr]

[td]6[/td]

[td]vielblättrig[/td]

[td]Baum[/td]

[/tr]

[/table]

Zwischentabelle:

[table=class: grid, align: left]

[tr]

[td][/td]

[td]J[/td]

[td]K[/td]

[td]L[/td]

[td]M[/td]

[td]N[/td]

[td]O[/td]

[/tr]

[tr]

[td]1[/td]

[td]Objekte[/td]

[td]fruchtig[/td]

[td]groß[/td]

[td]sehr groß[/td]

[td]strauchig[/td]

[td]vielblättrig[/td]

[/tr]

[tr]

[td]2[/td]

[td]Baum[/td]

[td][/td]

[td][/td]

[td]x[/td]

[td][/td]

[td]x[/td]

[/tr]

[tr]

[td]3[/td]

[td]Kleiner Strauch[/td]

[td]x[/td]

[td][/td]

[td][/td]

[td]x[/td]

[td][/td]

[/tr]

[tr]

[td]4[/td]

[td]Strauch[/td]

[td][/td]

[td]x[/td]

[td][/td]

[td]x[/td]

[td][/td]

[/tr]

[/table]

Die Formel in Zieltabelle-H2 ist noch nicht ganz fertig, sollte aber ausreichen, um dir en Lösungsansatz zu veranschaulichen. q.e.d.

Bearbeitet von colton
Geschrieben
Da MS-Excel eine Software zum Zweck zur Durchführung von Kalkulationen ist, sind die Stärken dieser eben unter der Verarbeiten von Zahlen zu finden ;)

Du reduzierst Excel auf einen etwas besseren Taschenrechner. Excel ist ein Tabellenkalkulationsprogramm. Der eine Teil heißt Kalkulation, insofern hast du recht, der andere heißt Tabelle - ich kann in Excel auch große Datenbanken in Form von Tabellen anlegen, genau wie mit RDBMS; in dieser Hinsicht unterscheiden sich diese beiden also nicht sehr.

Ein klassisches Werkzeug zur Realisierung Deiner Aufgabenstellung nennt sich RDBMS ;);)!

Relationales Datenbankmanagementsystem? Schau dir meine Tabellen an, das ist nichts anderes...

.oO( ich gehe auch nicht zum Tischler und sage: Bau mir bitte einen Kühlschrank)

Bei einem Kühlschrank mit Holzverkleidung ist der Tischler durchaus vonnöten.

Ohne mir das genauer zu betrachten, gehe ich dennoch davon aus, dass die Aufgabenstellung mit einer Tabellenkalkulation nicht zu lösen ist (auch nicht mit MS-Excel) ... jedenfalls nicht im Bereich von Formeln ;)

s. oben

Geschrieben

Momentan sieht die Formel so aus:

H2:

=WENN(K$2>0;$J$2&WENN(SUMME(K$3:K$99)>0;", ";"");"")&WENN(K$3>0;$J$3&WENN(SUMME(K$4:K$99)>0;", ";"");"")&WENN(K$4>0;$J$4&WENN(SUMME(K$5:K$99)>0;", ";"");"")&WENN(K$5>0;$J$5&WENN(SUMME(K$6:K$99)>0;", ";"");"")&WENN(K$6>0;$J$6&WENN(SUMME(K$7:K$99)>0;", ";"");"")&WENN(K$7>0;$J$7&WENN(SUMME(K$8:K$99)>0;", ";"");"")&WENN(K$8>0;$J$8&WENN(SUMME(K$9:K$99)>0;", ";"");"")&WENN(K$9>0;$J$9&WENN(SUMME(K$10:K$99)>0;", ";"");"")&WENN(K$10>0;$J$10&WENN(SUMME(K$11:K$99)>0;", ";"");"")&WENN(K$11>0;$J$11&WENN(SUMME(K$12:K$99)>0;", ";"");"")&WENN(K$12>0;$J$12&WENN(SUMME(K$13:K$99)>0;", ";"");"")&WENN(K$13>0;$J$13&WENN(SUMME(K$14:K$99)>0;", ";"");"")&WENN(K$14>0;$J$14&WENN(SUMME(K$15:K$99)>0;", ";"");"")&WENN(K$15>0;$J$15&WENN(SUMME(K$16:K$99)>0;", ";"");"")&WENN(K$16>0;$J$16&WENN(SUMME(K$17:K$99)>0;", ";"");"")&WENN(K$17>0;$J$17&WENN(SUMME(K$18:K$99)>0;", ";"");"")&WENN(K$18>0;$J$18&WENN(SUMME(K$19:K$99)>0;", ";"");"")&WENN(K$19>0;$J$19&WENN(SUMME(K$20:K$99)>0;", ";"");"")&WENN(K$20>0;$J$20&WENN(SUMME(K$21:K$99)>0;", ";"");"")&WENN(K$21>0;$J$21&WENN(SUMME(K$22:K$99)>0;", ";"");"")&WENN(K$22>0;$J$22&WENN(SUMME(K$23:K$99)>0;", ";"");"")&WENN(K$23>0;$J$23&WENN(SUMME(K$24:K$99)>0;", ";"");"")&WENN(K$24>0;$J$24&WENN(SUMME(K$25:K$99)>0;", ";"");"")&WENN(K$25>0;$J$25&WENN(SUMME(K$26:K$99)>0;", ";"");"")&WENN(K$26>0;$J$26&WENN(SUMME(K$27:K$99)>0;", ";"");"")&WENN(K$27>0;$J$27&WENN(SUMME(K$28:K$99)>0;", ";"");"")&WENN(K$28>0;$J$28&WENN(SUMME(K$29:K$99)>0;", ";"");"")&WENN(K$29>0;$J$29&WENN(SUMME(K$30:K$99)>0;", ";"");"")&WENN(K$30>0;$J$30&WENN(SUMME(K$31:K$99)>0;", ";"");"")&WENN(K$31>0;$J$31&WENN(SUMME(K$32:K$99)>0;", ";"");"")&WENN(K$32>0;$J$32&WENN(SUMME(K$33:K$99)>0;", ";"");"")&WENN(K$33>0;$J$33&WENN(SUMME(K$34:K$99)>0;", ";"");"")&WENN(K$34>0;$J$34&WENN(SUMME(K$35:K$99)>0;", ";"");"")&WENN(K$35>0;$J$35&WENN(SUMME(K$36:K$99)>0;", ";"");"")&WENN(K$36>0;$J$36&WENN(SUMME(K$37:K$99)>0;", ";"");"")&WENN(K$37>0;$J$37&WENN(SUMME(K$38:K$99)>0;", ";"");"")&WENN(K$38>0;$J$38&WENN(SUMME(K$39:K$99)>0;", ";"");"")&WENN(K$39>0;$J$39&WENN(SUMME(K$40:K$99)>0;", ";"");"")&WENN(K$40>0;$J$40&WENN(SUMME(K$41:K$99)>0;", ";"");"")&WENN(K$41>0;$J$41&WENN(SUMME(K$42:K$99)>0;", ";"");"")&WENN(K$42>0;$J$42&WENN(SUMME(K$43:K$99)>0;", ";"");"")&WENN(K$43>0;$J$43&WENN(SUMME(K$44:K$99)>0;", ";"");"")&WENN(K$44>0;$J$44&WENN(SUMME(K$45:K$99)>0;", ";"");"")&WENN(K$45>0;$J$45&WENN(SUMME(K$46:K$99)>0;", ";"");"")&WENN(K$46>0;$J$46&WENN(SUMME(K$47:K$99)>0;", ";"");"")&WENN(K$47>0;$J$47&WENN(SUMME(K$48:K$99)>0;", ";"");"")&WENN(K$48>0;$J$48&WENN(SUMME(K$49:K$99)>0;", ";"");"")&WENN(K$49>0;$J$49&WENN(SUMME(K$50:K$99)>0;", ";"");"")&WENN(K$50>0;$J$50&WENN(SUMME(K$51:K$99)>0;", ";"");"")&WENN(K$51>0;$J$51&WENN(SUMME(K$52:K$99)>0;", ";"");"")&WENN(K$52>0;$J$52&WENN(SUMME(K$53:K$99)>0;", ";"");"")&WENN(K$53>0;$J$53&WENN(SUMME(K$54:K$99)>0;", ";"");"")&WENN(K$54>0;$J$54&WENN(SUMME(K$55:K$99)>0;", ";"");"")&WENN(K$55>0;$J$55&WENN(SUMME(K$56:K$99)>0;", ";"");"")&WENN(K$56>0;$J$56&WENN(SUMME(K$57:K$99)>0;", ";"");"")&WENN(K$57>0;$J$57&WENN(SUMME(K$58:K$99)>0;", ";"");"")&WENN(K$58>0;$J$58&WENN(SUMME(K$59:K$99)>0;", ";"");"")&WENN(K$59>0;$J$59&WENN(SUMME(K$60:K$99)>0;", ";"");"")&WENN(K$60>0;$J$60&WENN(SUMME(K$61:K$99)>0;", ";"");"")&WENN(K$61>0;$J$61&WENN(SUMME(K$62:K$99)>0;", ";"");"")&WENN(K$62>0;$J$62&WENN(SUMME(K$63:K$99)>0;", ";"");"")&WENN(K$63>0;$J$63&WENN(SUMME(K$64:K$99)>0;", ";"");"")&WENN(K$64>0;$J$64&WENN(SUMME(K$65:K$99)>0;", ";"");"")&WENN(K$65>0;$J$65&WENN(SUMME(K$66:K$99)>0;", ";"");"")&WENN(K$66>0;$J$66&WENN(SUMME(K$67:K$99)>0;", ";"");"")&WENN(K$67>0;$J$67&WENN(SUMME(K$68:K$99)>0;", ";"");"")&WENN(K$68>0;$J$68&WENN(SUMME(K$69:K$99)>0;", ";"");"")&WENN(K$69>0;$J$69&WENN(SUMME(K$70:K$99)>0;", ";"");"")&WENN(K$70>0;$J$70&WENN(SUMME(K$71:K$99)>0;", ";"");"")&WENN(K$71>0;$J$71&WENN(SUMME(K$72:K$99)>0;", ";"");"")&WENN(K$72>0;$J$72&WENN(SUMME(K$73:K$99)>0;", ";"");"")&WENN(K$73>0;$J$73&WENN(SUMME(K$74:K$99)>0;", ";"");"")&WENN(K$74>0;$J$74&WENN(SUMME(K$75:K$99)>0;", ";"");"")&WENN(K$75>0;$J$75&WENN(SUMME(K$76:K$99)>0;", ";"");"")&WENN(K$76>0;$J$76&WENN(SUMME(K$77:K$99)>0;", ";"");"")&WENN(K$77>0;$J$77&WENN(SUMME(K$78:K$99)>0;", ";"");"")&WENN(K$78>0;$J$78&WENN(SUMME(K$79:K$99)>0;", ";"");"")&WENN(K$79>0;$J$79&WENN(SUMME(K$80:K$99)>0;", ";"");"")&WENN(K$80>0;$J$80&WENN(SUMME(K$81:K$99)>0;", ";"");"")&WENN(K$81>0;$J$81&WENN(SUMME(K$82:K$99)>0;", ";"");"")&WENN(K$82>0;$J$82&WENN(SUMME(K$83:K$99)>0;", ";"");"")&WENN(K$83>0;$J$83&WENN(SUMME(K$84:K$99)>0;", ";"");"")&WENN(K$84>0;$J$84&WENN(SUMME(K$85:K$99)>0;", ";"");"")&WENN(K$85>0;$J$85&WENN(SUMME(K$86:K$99)>0;", ";"");"")&WENN(K$86>0;$J$86&WENN(SUMME(K$87:K$99)>0;", ";"");"")&WENN(K$87>0;$J$87&WENN(SUMME(K$88:K$99)>0;", ";"");"")&WENN(K$88>0;$J$88&WENN(SUMME(K$89:K$99)>0;", ";"");"")&WENN(K$89>0;$J$89&WENN(SUMME(K$90:K$99)>0;", ";"");"")&WENN(K$90>0;$J$90&WENN(SUMME(K$91:K$99)>0;", ";"");"")&WENN(K$91>0;$J$91&WENN(SUMME(K$92:K$99)>0;", ";"");"")&WENN(K$92>0;$J$92&WENN(SUMME(K$93:K$99)>0;", ";"");"")&WENN(K$93>0;$J$93&WENN(SUMME(K$94:K$99)>0;", ";"");"")&WENN(K$94>0;$J$94&WENN(SUMME(K$95:K$99)>0;", ";"");"")&WENN(K$95>0;$J$95&WENN(SUMME(K$96:K$99)>0;", ";"");"")&WENN(K$96>0;$J$96&WENN(SUMME(K$97:K$99)>0;", ";"");"")&WENN(K$97>0;$J$97&WENN(SUMME(K$98:K$99)>0;", ";"");"")&WENN(K$98>0;$J$98&WENN(SUMME(K$99:K$99)>0;", ";"");"")&WENN(K$99>0;$J$99;"")

Und das ist nur eine von insgesamt 55 Zellen. Ich wollte diese Formel vereinfachen und hatte gehofft, daß hier jmd eine Idee hat, wie das gelingen könnte...

Geschrieben
Wenn ich so etwa lese, könnte ich fast schon Vergewaltigung schreien .... unglaublich ;)

Jup... Ich reize Excel ziemlich aus, was Formeln angeht ^^

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...