دالة REDUCE

ينطبق على
Excel لـ Microsoft 365 Excel لـ Microsoft 365 لـ Mac

تقليل صفيف إلى قيمة متراكمة عن طريق تطبيق LAMBDA على كل قيمة وإرجاع القيمة الإجمالية في المجمع.   

بناء الجملة

=REDUCE([initial_value], array, lambda(accumulator, value, body))

يتضمن بناء جملة الدالة REDUCE الوسيطات والمعلمات التالية:

  • [initial_value] تعيين قيمة البداية للمتراكم.

  • الصفيف صفيف سيتم تقليله.

  • امدا LAMBDA الذي يتم استدعاؤه لتقليل الصفيف. تأخذ LAMBDA ثلاث معلمات:

    • مراكم تم إجمالي القيمة وإرجاعها كنتيجة نهائية.
    • قيمه القيمة الحالية من الصفيف.
    • الجسم يتم تطبيق الحساب على كل عنصر في الصفيف.

ملاحظات

استخدم الوسيطة initial_value لتعيين قيمة البداية للمعلمة المُجمعة. في المثال 2، عندما تقوم بضرب المُجمع، قم بتعيين القيمة إلى 1 لتجنب الضرب في 0.

ملاحظة: إذا لم يتم توفير قيمة initial_value، فسيتم استخدام القيمة الأولى في الصفيف كقيمة بداية.

أخطاء

يؤدي توفير دالة LAMBDA غير صالحة أو عدد غير صحيح من المعلمات إلى إرجاع #VALUE! خطأ يسمى "معلمات غير صحيحة".

أمثلة

المثال 1: جمع القيم التربيعية

أدخل البيانات النموذجية في الخلايا A1: C2، ثم انسخ الصيغة في الخلية D4:

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

المثال الأول للدالة REDUCE

المثال ‎2: إنشاء دالة "PRODUCTIF" مخصصة لضرب القيم الأكبر من 50 فقط

أنشئ جدولا باسم "Table3" بعمود واحد يسمى "nums" بدءا من الخلية E1. انسخ الصيغة التالية في الخلية G2:

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

مثال على تقليل LAMBDA

المثال ‎3: حساب القيم الزوجية فقط

إنشاء جدول باسم "Table4" بعمود واحد يسمى "Nums" بدءا من الخلية D1. انسخ الصيغة التالية في الخلية F2:

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

المثال الثالث للدالة REDUCE