ArrayFindAll 2DArray

  • Moin,

    ich möchte aus einem 2D Array von der Spalte 2 drei neue Array's in Schleife erzeugen.

    Also, 2 Zeilen mit 27, eine Zeile mit 28 und zwei Zeilen mit 29., jeweils mit 5 Spalten.

    Könnt ihr mir helfen?

    Gruß

  • Soll in den Arrays einfach nur der Inhalt von der Spalte 2 stehen (Und das in allen 3?) oder das was dahinter steht?

    Also entweder:
    3* : [27],[27],[28],[29],[29]

    oder:
    27: [1, 0, 4, 2]
    28: [1, 3]
    29: [1, 0, 4, 1]

    Einmal editiert, zuletzt von Moombas (12. Dezember 2023 um 11:15)

  • Ich bin nicht 100% sicher ob ich die Aufgabe genau verstanden habe.
    So wie ich das verstanden habe möchtest du aus diesem kompletten Array für die jeweiligen Werte in Spalte 3 eigene Arrays machen?

    Das geht schon mit Bordmitteln.
    Bedenke aber dass _ArrayFindAll nur die Indizes wiedergibt.
    Das extrahieren dieser Zeilen und den Aufbau eines neuen Arrays musst du dann noch hinterher programmieren.

    Das geht - aber für sowas habe ich mal eine UDF (>>ArrayPlus-UDF<<) mit der man sich soetwas deutlich einfacher basteln kann.
    Hier mal als Beispiel wie man damit deine Aufgabe umsetzen könnte:

  • Mein Hauptproblem dabei ist, das die Arrays ja auch irgendwie dynamisch gebaut/ zugewiesen werden müssen.

    Dann wäre meine Lösung dise hier (aber recht unschön wie ich finde):

    Vielleicht da eher die Lösung von AspirinJunkie sich anschauen.

  • Hier mal eine variable Lösung (also egal ob 3 oder beliebig viele Arrays entstehen):

  • Na gut bei so vielen Lösungen wäre hier noch die von mir angesprochene Lösung wie man mit _ArrayFindAll() rangehen könnte:

  • Moin,

    weil das konkrete Problem recht einfach mit einem Map-Objekt gelöst werden kann, gibt es noch einen späten Nachschlag: