Clever-Excel-Forum

Normale Version: [Lambda] MTRANS8
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Ich habe nun MTRANS8 aus .REVERSE gemacht (danke für Deine Vorarbeit, maninweb):

PHP-Code:
A    B    C            C    B    A            J    K    L            L    K    J
D    E    F            F    E    D            G    H    I            I    H    G
G    H    I            I    H    G            D    E    F            F    E    D
J    K    L            L    K    J            A    B    C            C    B    A
Zustände 0
-3

A    D    G    J        C    F    I    L        J    G    D    A        L    I    F    C
B    E    H    K        B    E    H    K        K    H    E    B        K    H    E    B
C    F    I    L        A    D    G    J        L    I    F    C        J    G    D    A
Zustände 4
-

MTRANS8:
=LAMBDA(Array;Zustand;
LET(Arr;Array;
z;Zustand;
x;ZEILEN(Arr);
y;SPALTEN(Arr);
i;SEQUENZ(x);
j;SEQUENZ(;y);
m;x+1-i;
n;y+1-j;
ww;WAHL(REST(z;4)+1;INDEX(Arr;i;j);INDEX(Arr;i;n);INDEX(Arr;m;j);INDEX(Arr;m;n));
WENN(REST(z;8)>3;MTRANS(ww);ww)))


8 Zustände 0-7:
2x Zeilen (normal/rückwärts)
2x Spalten (normal/rückwärts)
2x Matrix (normal/MTRANS)

Echtes Drehen des Arrays in der Reihenfolge 0-6-3-5-0 bzw. 1-7-2-4-1.

Anwendungsbeispiel "5. Zustand": =MTRANS8({1.2.3;4.5.6};5) ergibt
3 6
2 5
1 4
also Zeilen rückwärts, Spalten normal, MTRANS ja.
Moin,

@LCohen: cool :-)

Gruß