Μειώνει έναν πίνακα σε μια συσσωρευμένη τιμή εφαρμόζοντας μια LAMBDA σε κάθε τιμή και επιστρέφοντας τη συνολική τιμή του αθροίσματος.
Σύνταξη
=REDUCE([initial_value], πίνακας, lambda(συσσωρευτής, τιμή, σώμα))
Η σύνταξη της συνάρτησης REDUCE περιλαμβάνει τα παρακάτω ορίσματα και παραμέτρους:
-
[initial_value] Ορίζει την τιμή έναρξης για τον συσσωρευτή.
-
array Ένας πίνακας προς μείωση.
-
lambda Μια LAMBDA που καλείται για τη μείωση του πίνακα. Η συνάρτηση LAMBDA λαμβάνει τρεις παραμέτρους:
-
accumulator Η τιμή αθροίστηκε και επιστράφηκε ως τελικό αποτέλεσμα.
-
value Η τρέχουσα τιμή από τον πίνακα.
-
Σώμα Ο υπολογισμός που εφαρμόζεται σε κάθε στοιχείο του πίνακα.
-
Παρατηρήσεις
Χρησιμοποιήστε το όρισμα initial_value για να ορίσετε την τιμή έναρξης για την παράμετρο αθροίσματος. Στο Παράδειγμα 2, όπου πολλαπλασιάζετε τον συσσωρευτή, ορίστε την τιμή σε 1 για να αποφύγετε τον πολλαπλασιασμό με 0.
Σφάλματα
Η παροχή μη έγκυρης συνάρτησης LAMBDA ή εσφαλμένου αριθμού παραμέτρων επιστρέφει ένα #VALUE! σφάλμα που ονομάζεται "Εσφαλμένες παράμετροι".
Παραδείγματα
Παράδειγμα 1: Αθροίστε τις τετραγωνικές τιμές
Εισαγάγετε το δείγμα δεδομένων στα κελιά A1:C2 και, στη συνέχεια, αντιγράψτε τον τύπο στο κελί D4:
=REDUCE(, A1:C2, LAMBDA(a,b,a+b^2))
Παράδειγμα 2: Δημιουργήστε μια προσαρμοσμένη συνάρτηση "PRODUCTIF" για να πολλαπλασιάσετε μόνο τιμές μεγαλύτερες από 50
Δημιουργία έναν πίνακα με το όνομα "Πίνακας3" με μία στήλη με το όνομα "nums" ξεκινώντας από το κελί E1. Αντιγράψτε τον παρακάτω τύπο στο κελί G2:
=REDUCE(1,Table3[nums],LAMBDA(a,b,IF(b>50,a*b,a)))
Παράδειγμα 3: Μετρήστε μόνο ζυγές τιμές
Δημιουργήστε έναν πίνακα με το όνομα "Table4" με μία στήλη με το όνομα "Nums" ξεκινώντας από το κελί D1. Αντιγράψτε τον παρακάτω τύπο στο κελί F2:
=REDUCE(0,Table4[Nums],LAMBDA(a,n,IF(ISEVEN(n),1+a, a)))