تختبر =IFS(B2>=90,"A",B2>=80,"B",B2>=70,"C",TRUE,"F") الشروط من الأول إلى الأخير وتعيد القيمة المقترنة بأول شرط يكون TRUE. تؤدي ما تؤديه IF المتداخلة دون وضع IF داخل أخرى. تحتاج IFS إلى Excel 2019 أو ما بعده، أو Microsoft 365.
| A | B | C | |
|---|---|---|---|
| 1 | Student | Score | Grade |
| 2 | Ana | 94 | A |
| 3 | Ben | 81 | B |
| 4 | Chloe | 70 | C |
| 5 | Dan | 65 | F |
| 6 | Eve | 88 | B |
| 7 | Finn | 90 | A |
انقر C2: أربعة أزواج من الاختبار والنتيجة وقوس ختامي واحد. غيّر درجة Chloe في B4 إلى 69 فينخفض تقديرها إلى F.
صيغة دالة IFS
=IFS(logical_test1, value_if_true1, [logical_test2, value_if_true2], ...)
- تأتي الوسائط أزواجًا: اختبار يعطي TRUE أو FALSE، ثم القيمة التي تُعاد عندما يكون TRUE.
- يتحقق الاكسل من الاختبارات بالترتيب ويعيد قيمة أول اختبار TRUE. لا يُتحقق من الاختبارات اللاحقة، لذا مع اختبارات
>=ضع أعلى حد أولًا. - يمكن أن يصل عدد الأزواج إلى 127.
- لا يوجد وسيط منفصل لـ "وإلا". الزوج الأخير الذي اختباره
TRUEيؤدي هذه المهمة.
الاختبار الذي بلا قيمة (عدد فردي من الوسائط) يجعل الاكسل يرفض الصيغة برسالة "You've entered too few arguments for this function" (أدخلت وسائط أقل من اللازم لهذه الدالة).
TRUE كقيمة افتراضية، و#N/A عندما لا يتطابق شيء
إذا لم يكن أي اختبار TRUE، تعيد IFS الخطأ #N/A. العمود C أدناه بلا قيمة افتراضية ويفشل في الدرجتين المنخفضتين؛ والعمود D ينتهي بـ TRUE,"F" فيلتقطهما:
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Student | Score | No default | TRUE default |
| 2 | Ana | 94 | A | A |
| 3 | Ben | 81 | B | B |
| 4 | Dan | 65 | #N/A | F |
| 5 | Eve | 88 | B | B |
| 6 | Gus | 52 | #N/A | F |
#N/A القيمة التي تبحث عنها غير موجودة في نطاق البحث.TRUE اختبار صحيح دائمًا، لذا لا يُوصل إليه إلا عندما يكون كل اختبار قبله FALSE، ويجب أن يكون الزوج الأخير: أي شيء بعده لا يُتحقق منه أبدًا. ويمكن أن تكون القيمة الافتراضية أي قيمة: TRUE,"" لخلية فارغة، وTRUE,"Check" لتعليم الصف. وإذا أردت إخفاء #N/A دون قيمة افتراضية، فإن =IFNA(IFS(...),"No grade") تعمل أيضًا؛ تشرح صفحة IFERROR الدالة IFNA.
IFS مع النص ومع AND أو OR
الاختبارات تعبيرات منطقية عادية، لذا يمكنها مقارنة النصوص واستخدام AND وOR. هنا يعتمد خيار التوصيل على المنطقة ومجموع الطلب:
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Order | Region | Total | Delivery |
| 2 | 1001 | North | $120 | Free |
| 3 | 1002 | North | $60 | Standard |
| 4 | 1003 | South | $150 | Express |
| 5 | 1004 | East | $40 | Post |
| 6 | 1005 | north | $300 | Free |
الطلب 1001 في North وفوق 100، لذا يحصل على Free. والطلب 1002 في North لكنه دون 100، فيفشل الاختبار الأول ويعطي الثاني، B2="North"، القيمة Standard. مقارنات النصوص تتجاهل حالة الأحرف، لذا يحصل 1005، المكتوب north، على Free أيضًا.
عندما يقارن كل اختبار الخلية نفسها بقيمة ثابتة (B2="N"، B2="S"، B2="E")، تذكر SWITCH كل قيمة مرة واحدة وتكون أقصر: =SWITCH(B2,"N","North","S","South","Other").
تمرين: سرعة التوصيل
| A | B | C | |
|---|---|---|---|
| 1 | Order | Days | Speed |
| 2 | 1001 | 3 | |
| 3 | 1002 | 1 | |
| 4 | 1003 | 7 | |
| 5 | 1004 | 2 | |
| 6 | 1005 | 5 |
دورك: في C2، أعد "Express" عندما تكون الأيام في B2 يومًا واحدًا أو أقل، و"Standard" عندما تكون 3 أو أقل، و"Slow" في غير ذلك. استخدم IFS. تُنسخ الصيغة إلى الأسفل حتى C6.
IFS مقابل IF المتداخلة
تعيد الصيغتان أدناه التقدير نفسه لكل درجة:
=IF(B2>=90,"A",IF(B2>=80,"B",IF(B2>=70,"C","F")))
=IFS(B2>=90,"A",B2>=80,"B",B2>=70,"C",TRUE,"F")
| IFS | IF المتداخلة | |
|---|---|---|
| الأقواس | زوج واحد | زوج لكل IF |
| القيمة الافتراضية | زوج TRUE أخير | value_if_false لآخر IF |
| لا يتطابق أي اختبار | #N/A ما لم تضف TRUE | value_if_false لآخر IF (FALSE إذا حذفتها) |
| الحد | 127 زوجًا | 64 دالة IF متداخلة |
| Excel 2016 وما قبله | #NAME? | تعمل |
اختر IFS عندما يكون لدى كل من يفتح الملف Excel 2019 أو ما بعده، وIF المتداخلة عندما يذهب الملف إلى شخص لديه إصدار أقدم. ومع نتيجتين فقط، تكون IF العادية أبسط من كلتيهما. أما للفئات الرقمية الكثيرة (شرائح الضرائب، أوزان الشحن)، فلا هذه ولا تلك أفضل أداة: جدول بحث بمطابقة تقريبية يحتفظ بالحدود في خلايا، كما يظهر في صفحة IF المتداخلة.
الأسئلة الشائعة
كيف أضيف قيمة افتراضية إلى IFS؟
اجعل الاختبار الأخير TRUE، وهو صحيح دائمًا: =IFS(B2>=90,"A",B2>=80,"B",TRUE,"F"). أي قيمة لم تطابق أيًا من الاختبارات السابقة تحصل على F.
لماذا تعيد IFS الخطأ #N/A؟
لأن أيًا من الاختبارات لم يكن TRUE ولا يوجد زوج TRUE أخير. تعيد =IFS(B2>=90,"A",B2>=80,"B") الخطأ #N/A للدرجة 75. أضف TRUE,"F" في النهاية، أو ضع الصيغة داخل IFNA.
أي إصدارات الاكسل فيها IFS؟
Excel 2019 وExcel 2021 وExcel 2024 وMicrosoft 365، بالإضافة إلى Excel للويب. في Excel 2016 وما قبله تعرض الصيغة التي فيها IFS الخطأ #NAME?، لذا استخدم IF المتداخلة هناك. ويحتوي Google Sheets أيضًا على IFS.
هل IFS أفضل من IF المتداخلة؟
هي أسهل قراءة وفيها قوس ختامي واحد فقط، لكنها تعمل بالطريقة نفسها: أول اختبار TRUE يفوز. وتبقى IF المتداخلة الخيار عندما يجب أن يُفتح الملف في Excel 2016 أو ما قبله.