Seite 1 von 1
String nach Array wandeln
Verfasst: So 19. Dez 2021, 18:08
von Hans-Sch
Hallo zusammen,
ich möchte aus einer Spalte die leeren Zellen rausfiltern und mir ein Array erstellen lassen, in dem nur die nicht-leeren drin sind. Die Ausgangslage sieht etwa so aus, sagen wir in Spalte A:
Mit der Formel
wird daraus das Ergebnis
Ich möchte daraus gern ein vertikales Array (1x4 Felder) machen, in dem diese Werte drin stehen. Am liebsten mit einer Arrayformel. Hat jemand eine Idee?
Nachtrag: Ich kann das Ergebnis kopieren, als Wert einfügen, geschweifte Klammern drum und ein Istgleich davor setzen und dann mit Ctrl+Shift+Enter eine Arrayformel draus machen. Das bringt das gewünschte Ergebnis. Aber ich möchte es
ohne diesen manuellen Zwischenschritt hinkriegen.
Re: String nach Array wandeln
Verfasst: So 19. Dez 2021, 18:53
von mikele
Hallo,
möchtest du die Werte {a;b;c;d} oder die Zeilennummern {1;2;5;7} im Array haben?
Soll mit dem Array dann noch etwas passieren?
Re: String nach Array wandeln
Verfasst: So 19. Dez 2021, 19:02
von Hans-Sch
Hallo Mikele, das Ziel wären die Werte {a;b;c;d}, aber mit den Zeilennummern als Zwischenschritt wäre ich auch zufrieden.
Re: String nach Array wandeln
Verfasst: So 19. Dez 2021, 19:13
von karolus
Hallo
=WENNFEHLER(REGAUS(VERBINDEN(";";1;A1:A7);"[^;]+"; ;{1;2;3;4;5;6;7});"")
Falls du englische Funktionsnamen verwendest, wäre das wohl:
=IFERROR(REGEX(TEXTJOIN(";";1;A1:A7);"[^;]+"; ;{1;2;3;4;5;6;7});"")
als Matrix-formel mit strg+shift+enter bestätigen.
Re: String nach Array wandeln
Verfasst: So 19. Dez 2021, 22:04
von Hans-Sch
Hallo karolus, danke, das funktioniert! Ich werde erstmal versuchen, Deine Formel zu verstehen, komme evtl. nochmal deshalb auf Dich zu. Mit Regex kenne ich mich im allgemeinen aus, aber den speziellen Dialekt von LO muss ich mir noch anschauen.
Allerdings habe ich das Problem, dass die Daten, auf die ich das dann anwenden will, ca. 1500 Zeilen umfassen. Muss ich dann das Array {1;...;7} von Hand anpassen, oder gibt es da auch eine einfache Formel? (So wie ich den Bereich als A1:A1500 definieren kann statt als A1;A2;A3;...)
Re: String nach Array wandeln
Verfasst: So 19. Dez 2021, 23:03
von karolus
Hallo
In dem Masstab ist es absurd per Formel!
Markiere A1:A1500 und wähle:
→Daten→Filter→Standardfilter→→Kriterium <nicht leer >
und →→Optionen →Ausgabe nach : <deine Zielzelle>
Re: String nach Array wandeln
Verfasst: Mo 20. Dez 2021, 19:44
von Hans-Sch
Nee karolus, so absurd ist es nicht, ich will damit statistische Informationen aus einer sich ständig ändernden Datenbank sichtbar machen. Aber ich habe einen Denkfehler gemacht: Auch wenn die Tabelle ca. 1500 Zeilen hat, gibt es doch nur ca. 30 verschiedene Strings, die in dieser Spalte stehen. Und das tipp ich notfalls zu Fuß

Re: String nach Array wandeln
Verfasst: Mo 20. Dez 2021, 22:01
von karolus
Hans-Sch hat geschrieben: ↑Mo 20. Dez 2021, 19:44
…, gibt es doch nur ca. 30 verschiedene Strings, die in dieser Spalte stehen. Und das tipp ich notfalls zu Fuß
Na gut, wenns
maximal 30 sind dann:
Code: Alles auswählen
=WENNFEHLER(REGAUS(VERBINDEN(" ";1;A$1:A$1500);"[^ ]+"; ; ZEILE(A$1:A$30));"")