دالتا AVERAGEIF و AVERAGEIFS في إكسل: حساب المتوسط بشرط
تعلم استخدام AVERAGEIF و AVERAGEIFS في إكسل لحساب المتوسط بشرط أو عدة شروط، مع استبعاد الأصفار والتواريخ وحل خطأ #DIV/0! باحترافية.
بقلم Ayoub Farid · · 1 دقائق قراءة
تعمل دالة AVERAGEIF تماماً مثل دالة AVERAGE، ولكن فقط للصفوف التي تحقق شرطاً معيناً. مثل حساب متوسط قيمة الطلبات لمنطقة محددة، أو متوسط درجات فصل دراسي معين، أو متوسط الإنفاق مع استبعاد الأشهر ذات القيمة صفر.
الصيغة العامة (Syntax)
=AVERAGEIF(range, criteria, [average_range])
=AVERAGEIFS(average_range, criteria_range1, criteria1, ...)
تتبع هاتان الدالتان نفس نمط دالتي SUMIF و SUMIFS: في صيغة الشروط المتعددة، يتم وضع نطاق القيم أولاً.
حساب المتوسط حسب الفئة
| A | B | |
|---|---|---|
| 1 | الفئة | السعر |
| 2 | قهوة | 2.50 |
| 3 | قهوة | 3.50 |
| 4 | طعام | 2.80 |
| 5 | طعام | 3.00 |
=AVERAGEIF(A2:A5,"طعام",B2:B5) → 2.90
استبعاد القيم الصفرية
=AVERAGEIF(B2:B13,"<>0")
هذه المعادلة مفيدة جداً عندما يتم إدخال الأشهر التي لا تحتوي على بيانات كقيمة 0 في جدول بيانات إكسل.
تطبيق شروط متعددة
منطقة الشمال (North)، لمنتجات القهوة فقط:
=AVERAGEIFS(D2:D500,B2:B500,"North",C2:C500,"Coffee")
بين تاريخين (تاريخ البداية في الخلية G1، وتاريخ النهاية في الخلية G2):
=AVERAGEIFS(D2:D500,A2:A500,">="&G1,A2:A500,"<="&G2)
معالجة حالة "عدم وجود نتائج مطابقة"
إذا لم تتطابق أي خلية مع الشرط، تُرجع دالة AVERAGEIF الخطأ !DIV/0# (لأنه لا يمكن القسمة على صفر صفوف). يمكنك معالجة هذا الخطأ باستخدام:
=IFERROR(AVERAGEIF(A2:A100,F2,B2:B100),"No data")
للمزيد من التفاصيل، راجع مقالتي IFERROR و خطأ !DIV/0#.
أخطاء شائعة
- توقع أن تتجاهل دالة AVERAGEIF الخلايا الفارغة في عمود الشرط: الخلايا الفارغة تطابق فقط المعيار
"". - الخلط في ترتيب المعاملات (Arguments) بين AVERAGEIF و AVERAGEIFS.
- حساب متوسط النسب المئوية لمجموعات مختلفة الأحجام؛ حيث تتطلب هذه الحالة استخدام المتوسط المرجح.
الأسئلة الشائعة
كيف أحسب المتوسط لخلايا معينة فقط في إكسل؟
استخدم دالة AVERAGEIF مع تحديد الشرط، على سبيل المثال: =AVERAGEIF(A:A,"Food",B:B).
كيف أحسب المتوسط مع استبعاد الأصفار؟
عبر كتابة الصيغة: =AVERAGEIF(range,"<>0").
لماذا تظهر النتيجة خطأ !DIV/0# مع دالة AVERAGEIF؟
يعني ذلك عدم وجود أي صفوف مطابقة للشرط المحدد. يمكنك دمجها داخل دالة IFERROR لحل المشكلة.
هل تتوفر دالة AVERAGEIFS في Google Sheets؟
نعم، وتعمل بنفس طريقة الكتابة والصيغة تماماً.