LISTAND, LISTCOMPL, LISTOR, LISTXOR
Beschreibung:
Gibt die zutreffenden Datensätze zu den Mengenbegriffen zweier Tabellen aus.
Syntax:
=LISTAND(a;b) (die anderen drei Funktionen genauso)
Beispiel:
Gegeben seien:
Einträge 1 2 3 8 5 6 7 in A2:A8
Einträge 5 6 7 4 9 1 in B2:B7
Daraus ergeben sich folgende Listen:
=LISTAND(A2:A8;B2:B7) ergibt 1 5 6 7 (Schnittmenge)
=LISTCOMPL(A2:A8;B2:B7) ergibt 2 3 8 (Restmenge A bzw. Komplement zu B)
=LISTCOMPL(B2:B7;A2:A8) ergibt 4 9 (Restmenge B bzw. Komplement zu A)
=LISTOR(A2:A8;B2:B7) ergibt 1 2 3 8 5 6 7 4 9 (Vereinigungsmenge)
=LISTXOR(A2:A8;B2:B7) ergibt 2 3 8 4 9 (Symmetrische Differenz bzw. exkl. Disjunktion)
Code LISTAND (Schnittmenge bzw. logische Konjunktion):
=LAMBDA(a;b;LET(
ArC;LAMBDA(a;b;LET(x;ZEILEN(a);y;SPALTEN(a);z;ZEILEN(b); k;SEQUENZ(x);m;SEQUENZ(x+z);n;SEQUENZ(;y); WENN(m<=x;INDEX(a;k;n);INDEX(b;m-x;n))));
x;ArC(a;b);EINDEUTIG(ArC(EINDEUTIG(x);EINDEUTIG(x;;1));;1)))
Code LISTCOMPL (Restmenge A bzw. Komplement zu B):
LAMBDA(a;b;LET(
ArC;LAMBDA(a;b;LET(x;ZEILEN(a);y;SPALTEN(a);z;ZEILEN(b); k;SEQUENZ(x);m;SEQUENZ(x+z);n;SEQUENZ(;y); WENN(m<=x;INDEX(a;k;n);INDEX(b;m-x;n))));
x;ArC(a;b);EINDEUTIG(ArC(a;EINDEUTIG(ArC(EINDEUTIG(x);EINDEUTIG(x;;1));;1));;1)))
Code LISTOR (Vereinigungsmenge bzw. logische Disjunktion):
=LAMBDA(a;b;LET(
ArC;LAMBDA(a;b;LET(x;ZEILEN(a);y;SPALTEN(a);z;ZEILEN(b); k;SEQUENZ(x);m;SEQUENZ(x+z);n;SEQUENZ(;y); WENN(m<=x;INDEX(a;k;n);INDEX(b;m-x;n))));
EINDEUTIG(ArC(a;b))))
Code LISTXOR (Symmetrische Differenz bzw. exklusive Disjunktion):
=LAMBDA(a;b;LET(
ArC;LAMBDA(a;b;LET(x;ZEILEN(a);y;SPALTEN(a);z;ZEILEN(b); k;SEQUENZ(x);m;SEQUENZ(x+z);n;SEQUENZ(;y); WENN(m<=x;INDEX(a;k;n);INDEX(b;m-x;n))));
EINDEUTIG(ArC(a;b);;1)))
Anmerkungen:
Die 4 Funktionen enthalten ARRAY.COMBINE in der Kurzform ArC und sind daher allein funktionsfähig.
Datei:
220218 Mengenermittlung mit ARRAY.COMBINE_2.xlsx (Größe: 11,47 KB / Downloads: 0)
Beschreibung:
Gibt die zutreffenden Datensätze zu den Mengenbegriffen zweier Tabellen aus.
Syntax:
=LISTAND(a;b) (die anderen drei Funktionen genauso)
Beispiel:
Gegeben seien:
Einträge 1 2 3 8 5 6 7 in A2:A8
Einträge 5 6 7 4 9 1 in B2:B7
Daraus ergeben sich folgende Listen:
=LISTAND(A2:A8;B2:B7) ergibt 1 5 6 7 (Schnittmenge)
=LISTCOMPL(A2:A8;B2:B7) ergibt 2 3 8 (Restmenge A bzw. Komplement zu B)
=LISTCOMPL(B2:B7;A2:A8) ergibt 4 9 (Restmenge B bzw. Komplement zu A)
=LISTOR(A2:A8;B2:B7) ergibt 1 2 3 8 5 6 7 4 9 (Vereinigungsmenge)
=LISTXOR(A2:A8;B2:B7) ergibt 2 3 8 4 9 (Symmetrische Differenz bzw. exkl. Disjunktion)
Code LISTAND (Schnittmenge bzw. logische Konjunktion):
=LAMBDA(a;b;LET(
ArC;LAMBDA(a;b;LET(x;ZEILEN(a);y;SPALTEN(a);z;ZEILEN(b); k;SEQUENZ(x);m;SEQUENZ(x+z);n;SEQUENZ(;y); WENN(m<=x;INDEX(a;k;n);INDEX(b;m-x;n))));
x;ArC(a;b);EINDEUTIG(ArC(EINDEUTIG(x);EINDEUTIG(x;;1));;1)))
Code LISTCOMPL (Restmenge A bzw. Komplement zu B):
LAMBDA(a;b;LET(
ArC;LAMBDA(a;b;LET(x;ZEILEN(a);y;SPALTEN(a);z;ZEILEN(b); k;SEQUENZ(x);m;SEQUENZ(x+z);n;SEQUENZ(;y); WENN(m<=x;INDEX(a;k;n);INDEX(b;m-x;n))));
x;ArC(a;b);EINDEUTIG(ArC(a;EINDEUTIG(ArC(EINDEUTIG(x);EINDEUTIG(x;;1));;1));;1)))
Code LISTOR (Vereinigungsmenge bzw. logische Disjunktion):
=LAMBDA(a;b;LET(
ArC;LAMBDA(a;b;LET(x;ZEILEN(a);y;SPALTEN(a);z;ZEILEN(b); k;SEQUENZ(x);m;SEQUENZ(x+z);n;SEQUENZ(;y); WENN(m<=x;INDEX(a;k;n);INDEX(b;m-x;n))));
EINDEUTIG(ArC(a;b))))
Code LISTXOR (Symmetrische Differenz bzw. exklusive Disjunktion):
=LAMBDA(a;b;LET(
ArC;LAMBDA(a;b;LET(x;ZEILEN(a);y;SPALTEN(a);z;ZEILEN(b); k;SEQUENZ(x);m;SEQUENZ(x+z);n;SEQUENZ(;y); WENN(m<=x;INDEX(a;k;n);INDEX(b;m-x;n))));
EINDEUTIG(ArC(a;b);;1)))
Anmerkungen:
Die 4 Funktionen enthalten ARRAY.COMBINE in der Kurzform ArC und sind daher allein funktionsfähig.
Datei:
220218 Mengenermittlung mit ARRAY.COMBINE_2.xlsx (Größe: 11,47 KB / Downloads: 0)
WIN/MSO schicken angeblich alle 5 Sekunden Deinen Screen heim zu Papa (recall-Klausel).