Office: Liste der Permutationen (ohne VBA)

Helfe beim Thema Liste der Permutationen (ohne VBA) in Microsoft Excel Tutorials um das Problem gemeinsam zu lösen; Inhalt 1. Vorgeschichte mit elaborierter Excelformeln.de-Lösung 2. Schnell und schmutzig mit ARRAY.SHAKE (LAMBDA-Fkt. ab Excel 365) __________ 1.... Dieses Thema im Forum "Microsoft Excel Tutorials" wurde erstellt von lupo1, 3. März 2021.

  1. lupo1
    lupo1 Tutorial Guru

    Liste der Permutationen (ohne VBA)


    Inhalt
    1. Vorgeschichte mit elaborierter Excelformeln.de-Lösung
    2. Schnell und schmutzig mit ARRAY.SHAKE (LAMBDA-Fkt. ab Excel 365)
    __________
    1. Vorgeschichte mit elaborierter Excelformeln.de-Lösung

    Viele kennen sicherlich die beiden Links aus dem früheren Excelformeln.de:
    Kombinatorik: Permutationen mit/ohne Wiederholung
    Kombinatorik: Permutationen ohne Wiederholung auflisten

    Beim zweiten Link wird die Liste mit zwei Hilfszellen erzeugt, deren (geniale! Mathematiker-) Formeln aber in der Spalte A einsetzbar sind. Dies geschieht in folgender LET-Formel (geht aber auch ohne LET, dann mit mehr Rechenaufwand):

    A1: Zu permutierender String mit max. 9 Zeichen, z.B. ABCDE oder ABBCD

    A2[:Axxxx]:
    =LET(
    x;(10-VERGLEICH(0;REST(ZEILE()-1;FAKULTÄT(10-SPALTE($A:$I)));-1));
    y;ZEILE()-FAKULTÄT(x);
    z;INDIREKT("Z"&y;0);
    LINKS(z;LÄNGE(A$1)-x-1)&RECHTS(z;x)&LINKS(RECHTS(z;x+1);1))


    Einschränkungen:
    Die Formel A2 ist nicht dynamisch, sondern muss manuell herunterkopiert werden. Achtung: Relativ lange Berechnungszeit, z.B. für 6 Zeichen 40 Sekunden! Absturz schon bei Permutationsliste von 7 Zeichen. Ursache ist die für xl365 weniger geeignete Formel. Die Eingabe in A1 und ab A2 ist so Voraussetzung.

    Hat man dies gemacht, kann man sich mit =EINDEUTIG() darauf beziehen, um für das zweite Beispiel in A1, nämlich ABBCD, die (kürzere) Liste der Permutationen mit Wiederholung zu erhalten.

    Da Excel 2007 die Zahl der Zeilen von 65536 auf 1048576 erhöhte, sind nun 9 statt 8 Zeichen im zu permutierenden String möglich.

    Ohne Wiederholungen ergibt sich die Anzahl der Permutationen zu
    2! = 2
    3! = 6
    4! = 24
    5! = 120
    6! = 720
    7! = 5040
    8! = 40320
    9! = 362880 (9 ist die Länge des Strings).

    Mit Wdh. ergibt z.B. ABBCD 4!/2! = 12 Einträge. Jede weitere Wdh. kommt ebenfalls in den Nenner.
    __________
    2. Schnell und schmutzig mit ARRAY.SHAKE (LAMBDA-Fkt. ab Excel 365)

    A1: eine 2-9stellige Zahl, z.B. 34 oder 123456789
    A2: =--TEXTVERKETTEN(;;ARRAY.SHAKE(TEIL(A1;SEQUENZ(;LÄNGE(A1));1)))
    C1: =EINDEUTIG(SORTIEREN(A:A))

    Der Clou ist nun folgender: Man kopiert A2: um ein ca. 10-faches der Permutationen-Anzahl herunter, bei 7 Ziffern also bis A50000 (da 7! = 5040). Die Ergebnisliste in C1 ergibt dann 5040 Einträge. Falls nicht, F9 drücken oder A:A nochmals verlängern. Die Antwortzeiten von Excel sind viel kürzer als oben, da SORTIEREN, EINDEUTIG und ARRAY.SHAKE sehr schnell sind. Wiederholungen bei den Ziffern werden über EINDEUTIG eliminiert, so dass sich die korrekte Liste mit Wdh. ergibt. Da die Anzahl der Permutationen bei 9 Zeichen 362880 beträgt, klappt das Verfahren hier nicht (!).
     
    Zuletzt bearbeitet: 3. März 2021
    lupo1, 3. März 2021
    #1
Thema:

Liste der Permutationen (ohne VBA)

Die Seite wird geladen...
  1. Liste der Permutationen (ohne VBA) - Similar Threads - Liste Permutationen VBA

  2. Zweispaltige Liste umsortieren

    in Microsoft Excel Hilfe
    Zweispaltige Liste umsortieren: Moin, eine einspaltige Liste mittels SPALTENUMBRUCH umzusortieren ist ja kein Hexenwerk. Aber eine zweispaltige Liste so umzusortieren, dass die Datensätze auch zusammenbleiben, will mir momentan...
  3. Excel Kalender in Word als Liste exportieren

    in Microsoft Excel Hilfe
    Excel Kalender in Word als Liste exportieren: Hallo zusammen, ich habe folgendes vor: Ich besitze einen Kalender (Jahresplan) und möchte diesen gerne in Word exportieren. Wichtig ist das die Termine den Personen zugeordnet sind und nach...
  4. SQL: Filtern mit mehreren Werten aus einer Excelspalte (Liste)

    in Microsoft Excel Hilfe
    SQL: Filtern mit mehreren Werten aus einer Excelspalte (Liste): Hallo zusammen, ich bräuchte Eure Hilfe, bei dem ich nicht weitere komme. Ich lasse importiere SQL-Daten über mehrere Abfragen im Editor vor filtern. Eine Spalte über einen Artikel...
  5. XVERWEIS Liste erstellen

    in Microsoft Excel Hilfe
    XVERWEIS Liste erstellen: Hallo, ich habe eine Liste mit diversen Daten. Ich will nun aus dieser Liste bestimmte Zellen kopieren, wenn 2 Bedingungen erfüllt werden. Habe es mit XVERWEIS versucht komme aber nicht hin....
  6. Schnellsprung zu einer Zeile in einer Liste (Buchstabe)

    in Microsoft Excel Hilfe
    Schnellsprung zu einer Zeile in einer Liste (Buchstabe): Ich habe eine Liste mit Lieferorten. Diese ist Alphabetisch geordnet. Ich habe sie so abgespeichert, dass man Mittig liegt und dann je nach Stadtname hoch oder runterscrollen muß. Die Liste wird...
  7. COMBINATORICS_LIST: Liste der Permutationen, Kombinationen, Variationen in einer Formel

    in Microsoft Excel Tutorials
    COMBINATORICS_LIST: Liste der Permutationen, Kombinationen, Variationen in einer Formel: COMBINATORICS_LIST benenne im Namensmanager folgende XL365-Formel: =LAMBDA(n;[k];[c];LET( z;WENN(c;c;WENN(ISTZAHL(--n)*(LÄNGE(n)=1);1;WENN(k;3;2)));...
  8. PERMUT.LIST: Liste der Permutationen ohne und mit Wdh.

    in Microsoft Excel Tutorials
    PERMUT.LIST: Liste der Permutationen ohne und mit Wdh.: A) Ohne Wiederholung Mit =PERMUT_LIST(9) erhalte ich rekursiv die =FAKULTÄT(9) = 362880 Einträge (unsortiert, ohne Wiederholer; EINDEUTIG darf raus, ca. 1/3 Sekunde Dauer): Benenne ......
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden