03.08.2020, 16:52 (Dieser Beitrag wurde zuletzt bearbeitet: 03.08.2020, 17:28 von Manguun.)
Hallo zusammen,
ich habe folgendes Problem: Ausgangslage ist eine simple Liste in der in Spalte A der Unternehmensname und in Spalte B die Abteilung steht. Es ist so, dass dasselbe Unternehmen häufiger vorkommen kann (es kann auch nur einmal vorkommen) und auch die Abteilung sich doppeln kann. Was ich gerne haben würde, wäre eine Liste, in der in Spalte A jedes Unternehmen nur einmal steht und in Spalte B dann in der jeweiligen Zelle daneben alle Abteilungen dieses Unternehmens. In den Anhang habe ich einen Beispieldatensatz gepackt, der hoffentlich deutlich macht, was die Ausgangslage ist und was ich mir am Ende erhoffe.
Ich habe schon etwas überlegt und etwas mit der Textverketten Option probiert, da allerdings noch keinen vernünftigen Weg gefunden, die Bedingungen einzufügen. Hoffentlich hat jemand von euch eine Idee, wie ich da rangehen könnte.
Bedingungen für die Beschränkung auf die beiden Formeln, ohne sie kopieren zu müssen: a) nach Spalte A ist sortiert b) Spalte B hat exakte 3-Zeichen-Einträge c) vor Zeile 14 werden neue Sätze eingefügt (damit man keinen umständlichen ANZAHL2()-Apparat rumschleppt)
Erläuterung: TEXTVERKETTEN lässt sich leider nicht dynamisch bedingt verwenden. Daher verkette ich alles, und grenze dann mit TEIL und VERGLEICH ein. ____________________________________ Hier noch die Aufhebung von Bedingung b): F4: =WECHSELN(WECHSELN(TEIL(TEXTVERKETTEN("; ";;B4:B14&WIEDERHOLEN("_";MAX(LÄNGE(B4:B14))-LÄNGE(B4:B14))); VERGLEICH(E4#;A4:A14;)*(MAX(LÄNGE(B4:B14))+2)-(MAX(LÄNGE(B4:B14))+1);( VERGLEICH(E4#;A4:A14)- VERGLEICH(E4#;A4:A14;)+1)*(MAX(LÄNGE(B4:B14))+2))&" ";"; ";);"_";)
F4: =LET( c;SORTIEREN(A4:INDEX(B:B;ANZAHL2(A:A)+2)); a;INDEX(c;;1); b;INDEX(c;;2); d;LÄNGE(b); e;MAX(d)+2;k;"Das +2 ist die Länge des Verketters '; ' in TEXTVERKETTEN"; f;VERGLEICH(E4#;a;);l;"Speichere nichtbinären Vergleich für Speed"; WECHSELN(WECHSELN(TEIL(TEXTVERKETTEN("; ";;b&WIEDERHOLEN("_";MAX(d)-d)); f*e-e+1;(VERGLEICH(E4#;a)-f+1)*e)&" ";"; ";);"_";))
Man beachte die In-der-Formel-Kurzdoku (muss nicht sein!).
___________________ @ Case: 1) Anscheinend Verknüpfungsrest "comburg" in der Datei, und 2) keine Nachfrage, ob Makros aktiviert werden sollen (vermutlich meine eigene Dummheit)
04.08.2020, 11:39 (Dieser Beitrag wurde zuletzt bearbeitet: 04.08.2020, 11:45 von Manguun.)
Hallo zusammen,
vielen Dank für die vielen Vorschläge! Ich muss die Tage mal schauen, ob ich Zugriff auf eine 365 Excel-Version bekomme, da die Vorschläge mit der 16er oder 19er Version (glaube ich) alle nicht funktionieren oder? Makro ist auch etwas problematisch, da mein Rechner schon so mit der Größe des Datensatzes an seine Grenzen kommt und ich befürchte, dass mit aktivierten Makros gar nichts mehr geht.
Edit: LCohens erste Lösung funktioniert für mich in dee 19-Edition, vielen Dank!
dass es Größenprobleme geben soll, weil da 500 Bytes Makros drin sind, kann ich nicht nachvollziehen.
Falls Du wirklich Probleme wegen der Größe einer Exceldatei haben solltest: Man kann seine Datei auch im xlsb-Format speichern. Dieses binäre Format ist in der Regel deutlich kleiner als xlsx und xlsm.
Ich kenne mich mit Makros leider gar nicht aus, mir wurde nur mal geraten, Makros auszuschalten, damit der Datensatz flüssiger läuft. Danke für den Tipp mit dem Format, das werde ich mal ausprobieren.