REDUCE-functie

Van toepassing op
Excel voor Microsoft 365 Excel voor Microsoft 365 voor Mac

Verkleint een matrix tot een cumulatieve waarde door een LAMBDA toe te passen op elke waarde en de totale waarde in de accumulator te retourneren.   

Syntaxis

=REDUCE([initial_value], matrix, lambda(accumulator, waarde, hoofdtekst))

De syntaxis van de REDUCE-functie heeft de volgende argumenten en parameters:

  • [initial_value] Hiermee stelt u de beginwaarde voor de accumulator in.

  • matrix Een matrix die moet worden verkleind.

  • lambda Een LAMBDA die wordt aangeroepen om de matrix te verminderen. De LAMBDA gebruikt drie parameters:

    • accumulator De opgetelde waarde en geretourneerd als het uiteindelijke resultaat.
    • waarde De huidige waarde van de matrix.
    • Lichaam De berekening die wordt toegepast op elk element in de matrix.

Opmerkingen

Gebruik het argument initial_value om de beginwaarde voor de accumulatorparameter in te stellen. In voorbeeld 2, waarbij u de accumulator vermenigvuldigt, stelt u de waarde in op 1 om te voorkomen dat u met 0 vermenigvuldigt.

OPMERKING: Als er geen waarde is opgegeven voor de initial_value, wordt de eerste waarde in de matrix gebruikt als de beginwaarde.

Fouten

Als u een ongeldige LAMBDA-functie of een onjuist aantal parameters opgeeft, wordt een #VALUE! geretourneerd fout met de naam 'Onjuiste parameters'.

Voorbeelden

Voorbeeld 1: De kwadrate waarden optellen

Voer de voorbeeldgegevens in cellen A1:C2 in en kopieer de formule naar cel D4:

=REDUCE(, A1:C2, LAMBDA(a,b,a+b^2))

Voorbeeld1 van de eerste REDUCE-functie

Voorbeeld 2: Een aangepaste functie 'PRODUCTIF' maken om alleen waarden groter dan 50 te vermenigvuldigen

Maak een tabel met de naam 'Table3' met één kolom met de naam 'nums' vanaf cel E1. Kopieer de volgende formule naar cel G2:

=REDUCE(1,Table3[nums],LAMBDA(a,b,IF(b>50,a*b,a)))

LAMBDA-VERKLEINEN-voorbeeld

Voorbeeld 3: Alleen even waarden tellen

Maak een tabel met de naam 'Table4' met één kolom met de naam 'Nums' vanaf cel D1. Kopieer de volgende formule naar cel F2:

=REDUCE(0,Table4[Nums],LAMBDA(a,n,IF(ISEVEN(n),1+a, a)))

Voorbeeld van de derde REDUCE-functie