جدول المحتويات
يشرح البرنامج التعليمي كيفية استخدام وظيفة IF المتداخلة في Excel للتحقق من شروط متعددة. ستتعلم أيضًا بعض الوظائف الأخرى التي يمكن أن تكون بدائل جيدة لاستخدام صيغة متداخلة في Excel.
كيف يمكنك عادةً تنفيذ منطق اتخاذ القرار في أوراق عمل Excel الخاصة بك؟ في معظم الحالات ، يمكنك استخدام صيغة IF لاختبار الشرط وإرجاع قيمة واحدة إذا تم استيفاء الشرط ، وقيمة أخرى إذا لم يتم استيفاء الشرط. لتقييم أكثر من شرط وإرجاع قيم مختلفة بناءً على النتائج ، يمكنك تداخل IFs متعددة داخل بعضها البعض.
بالرغم من كونها شائعة جدًا ، فإن عبارة IF المتداخلة ليست الطريقة الوحيدة للتحقق من عدة شروط في Excel. في هذا البرنامج التعليمي ، ستجد عددًا قليلاً من البدائل التي تستحق الاستكشاف بالتأكيد.
عبارة IF المتداخلة في Excel
إليك صيغة IF المتداخلة في Excel في نموذج عام :
IF ( condition1، result1، IF ( condition2، result2، IF ( condition3، result3، result4)))يمكنك أن ترى أن كل دالة IF لاحقة مضمنة في الوسيطة value_if_false للوظيفة السابقة. كل دالة IF محاطة بمجموعتها الخاصة من الأقواس ، ولكن كل أقواس الإغلاق موجودة في نهاية الصيغة.
تقيم صيغة IF المتداخلة العامة 3 شروط ، وتُرجع 4 نتائج مختلفة (يتم إرجاع النتيجة 4 إذا لم يكن أي منالمصنف للتنزيل
عبارة Excel المتداخلة - أمثلة (ملف .xlsx)
الشروط هي TRUE). إذا تمت ترجمتها إلى لغة بشرية ، فإن عبارة IF المتداخلة هذه تخبر Excel بالقيام بما يلي:اختبار الشرط 1، إذا كانت TRUE - إرجاع نتيجة 1، إذا كانت FALSE -اختبار condition2 ، إذا كانت TRUE - إرجاع r esult2 ، إذا كانت FALSE -
اختبار condition3 ، إذا كانت TRUE - إرجاع نتيجة 3 ، إذا FALSE -
إرجاع نتيجة 4
كمثال ، دعنا نتعرف على العمولات لعدد من البائعين بناءً على حجم المبيعات التي قاموا بها:
العمولة | المبيعات |
3٪ | $ 1 - $ 50 |
5٪ | $ 51 - $ 100 |
7٪ | $ 101 - $ 150 |
10٪ | أكثر من 150 دولارًا |
في الرياضيات ، لا يؤدي تغيير ترتيب الإضافات إلى تغيير المجموع. في Excel ، يؤدي تغيير ترتيب دالات IF إلى تغيير النتيجة. لماذا ا؟ لأن صيغة IF المتداخلة ترجع قيمة مناظرة لشرط TRUE الأول . لذلك ، في عبارات IF المتداخلة ، من المهم جدًا ترتيب الشروط في الاتجاه الصحيح - من الأعلى إلى الأقل أو من الأقل إلى الأعلى ، اعتمادًا على منطق المعادلة. في حالتنا ، نتحقق من الحالة "الأعلى" أولاً ، ثم "ثاني أعلى" ، وهكذا:
=IF(B2>150, 10%, IF(B2>=101, 7%, IF(B2>=51, 5%, IF(B2>=1, 3%, ""))))
إذا وضعنا الشروط بترتيب عكسي ، من الأسفل إلى الأعلى ، ستكون النتائج خاطئة تمامًا لأن الصيغة ستتوقف بعد الاختبار المنطقي الأول (B2 & gt ؛ = 1) لأي قيمة أكبر من 1. دعنا نقول ، لدينا 100 دولارفي المبيعات - أكبر من 1 ، لذلك لن تتحقق الصيغة من الشروط الأخرى وتعود 3٪ كنتيجة.
إذا كنت تفضل ترتيب الشروط من الأقل إلى الأعلى ، فاستخدم "أقل من "عامل التشغيل وتقييم الشرط" الأدنى "أولاً ، ثم" ثاني أدنى "، وهكذا:
=IF($B2<1, 0%, IF($B2<51, 3%, IF($B2<101, 5%, IF($B2<=150, 7%, 10%))))
كما ترى ، يتطلب الأمر الكثير من التفكير لبناء المنطق من جملة IF المتداخلة بشكل صحيح حتى النهاية. وعلى الرغم من أن Microsoft Excel يسمح بتداخل ما يصل إلى 64 دالة IF في صيغة واحدة ، إلا أنه ليس شيئًا تريد القيام به في أوراق العمل الخاصة بك. لذلك ، إذا كنت (أو أي شخص آخر) تحدق في صيغة IF المتداخلة في Excel تحاول معرفة ما تفعله بالفعل ، فقد حان الوقت لإعادة النظر في استراتيجيتك وربما اختيار أداة أخرى في ترسانتك.
لمزيد من المعلومات ، يرجى الاطلاع على عبارة IF المتداخلة في Excel.
Nested IF مع شروط OR / AND
في حالة احتياجك إلى تقييم مجموعات قليلة من الشروط المختلفة ، يمكنك التعبير عن هذه الشروط باستخدام OR وكذلك دالة AND ، قم بتضمين الدالات داخل عبارات IF ، ثم قم بتضمين عبارات IF في بعضها البعض.
Nested IF في Excel مع عبارات OR
باستخدام الدالة OR ، يمكنك التحقق من اثنين أو أكثر شروط مختلفة في الاختبار المنطقي لكل دالة IF وإرجاع TRUE إذا تم تقييم أي (واحدة على الأقل) من وسيطات OR إلى TRUE. لمعرفة كيف يعمل بالفعل ، يرجى النظر فيالمثال التالي.
لنفترض أن لديك عمودين للمبيعات ، لنقل مبيعات يناير في العمود B ومبيعات فبراير في العمود C. تريد التحقق من الأرقام في كلا العمودين وحساب العمولة بناءً على رقم أعلى. بعبارة أخرى ، تقوم ببناء معادلة بالمنطق التالي: إذا كانت مبيعات يناير أو فبراير أكبر من 150 دولارًا أمريكيًا ، يحصل البائع على عمولة بنسبة 10٪ ، وإذا كانت مبيعات يناير أو فبراير أكبر من 101 دولار أمريكي أو تساويها ، فإن البائع يحصل على عمولة بنسبة 7٪ ، وما إلى ذلك.
للقيام بذلك ، اكتب بعض العبارات مثل OR (B2 & gt؛ 150، C2 & gt؛ 150) وقم بتضمينها في الاختبارات المنطقية لوظائف IF التي تمت مناقشتها أعلاه. كنتيجة لذلك ، تحصل على هذه الصيغة:
=IF(OR(B2>150, C2>150), 10%, IF(OR(B2>=101, C2>=101),7%, IF(OR(B2>=51, C2>=51), 5%, IF(OR(B2>=1, C2>=1), 3%, ""))))
ويتم تعيين العمولة بناءً على مبلغ المبيعات الأعلى:
من أجل المزيد من أمثلة الصيغة ، يرجى الاطلاع على عبارة Excel IF OR.
Nested IF في Excel مع عبارات AND
إذا كانت اختباراتك المنطقية تتضمن شروطًا متعددة ، ويجب تقييم جميع هذه الشروط إلى TRUE ، فقم بالتعبير عنها باستخدام الدالة AND.
على سبيل المثال ، لتعيين العمولات بناءً على عدد أقل من المبيعات ، خذ الصيغة أعلاه واستبدل OR بعبارات AND. بعبارة أخرى ، يمكنك إخبار Excel بإرجاع 10٪ فقط إذا كانت مبيعات يناير وفبراير أكبر من 150 دولارًا ، و 7٪ إذا كانت مبيعات يناير وفبراير أكبر من أو تساوي 101 دولارًا ، وهكذا.
=IF(AND(B2>150, C2>150), 10%, IF(AND(B2>=101, C2>=101), 7%, IF(AND(B2>=51, C2>=51), 5%, IF(AND(B2>=1, C2>=1), 3%, ""))))
نتيجة لذلك ، تحسب صيغة IF المتداخلة العمولةاستنادًا إلى الرقم الأدنى في العمودين B و C. إذا كان أي من العمودين فارغًا ، فلا توجد عمولة على الإطلاق لأنه لم يتم استيفاء أي من شروط AND:
إذا ' d ترغب في إرجاع 0٪ بدلاً من الخلايا الفارغة ، استبدل سلسلة فارغة ("") في الوسيطة الأخيرة بـ 0٪:
=IF(AND(B2>150, C2>150), 10%, IF(AND(B2>=101, C2>=101), 7%, IF(AND(B2>=51, C2>=51), 5%, IF(AND(B2>=1, C2>=1), 3%, 0%))))
يمكن العثور على مزيد من المعلومات هنا: Excel IF بشروط AND / OR متعددة.
VLOOKUP بدلاً من IF المتداخلة في Excel
عندما تتعامل مع "المقاييس" ، أي النطاقات المستمرة للقيم الرقمية التي تغطي معًا النطاق بأكمله ، في معظم الحالات ، يمكنك استخدام وظيفة VLOOKUP بدلاً من IFs المتداخلة.
بالنسبة للمبتدئين ، قم بإنشاء جدول مرجعي كما هو موضح في لقطة الشاشة أدناه. ثم ، قم بإنشاء صيغة Vlookup مع تطابق تقريبي ، أي مع تعيين الوسيطة range_lookup إلى TRUE.
بافتراض أن قيمة البحث في B2 والجدول المرجعي هو F2: G5 ، فإن الصيغة تصبح كما يلي :
=VLOOKUP(B2,$F$2:$G$5,2,TRUE)
يرجى ملاحظة أننا نصلح table_array بالمراجع المطلقة ($ F $ 2: $ G $ 5) لنسخ الصيغة بشكل صحيح إلى خلايا أخرى:
بتعيين الوسيطة الأخيرة لصيغة Vlookup الخاصة بك إلى TRUE ، فأنت تخبر Excel أن البحث عن أقرب تطابق - إذا لم يتم العثور على تطابق تام ، فقم بإرجاع القيمة الأكبر التالية الأصغر من قيمة البحث. نتيجة لذلك ، لن تتطابق الصيغة مع القيم الدقيقة في جدول البحث فحسب ، بل تتطابق أيضًا مع أي من القيم الموجودة في جدول البحثالقيم التي تقع بين.
على سبيل المثال ، قيمة البحث في B3 هي 95 دولارًا. هذا الرقم غير موجود في جدول البحث ، وسيُرجع Vlookup مع المطابقة التامة الخطأ # N / A في هذه الحالة. لكن Vlookup مع التطابق التقريبي يستمر في البحث حتى يعثر على أقرب قيمة أقل من قيمة البحث (وهي 50 دولارًا في مثالنا) ويعيد قيمة من العمود الثاني في نفس الصف (وهو 5٪).
ولكن ماذا لو كانت قيمة البحث أقل من أصغر رقم في جدول البحث أو كانت خلية البحث فارغة؟ في هذه الحالة ، ستُرجع صيغة Vlookup الخطأ # N / A. إذا لم يكن هذا هو ما تريده بالفعل ، فقم بتداخل VLOOKUP داخل IFERROR وقم بتوفير القيمة لإخراجها عندما لا يتم العثور على قيمة البحث. على سبيل المثال:
=IFERROR(VLOOKUP(B2, $F$2:$G$5, 2, TRUE), "Outside range")
ملاحظة مهمة! لكي تعمل صيغة Vlookup ذات المطابقة التقريبية بشكل صحيح ، يجب فرز العمود الأول في جدول البحث في ترتيب تصاعدي ، من الأصغر إلى الأكبر.
لمزيد من المعلومات ، يرجى الاطلاع على التطابق التام VLOOKUP مقابل المطابقة التقريبية VLOOKUP.
عبارة IFS كبديل لوظيفة IF المتداخلة
في Excel 2016 والإصدارات الأحدث ، قدمت Microsoft وظيفة خاصة لتقييم الشروط المتعددة - وظيفة IFS.
صيغة IFS يمكنها معالجة ما يصل إلى 127 logical_test / value_if_true زوجًا ، وأول اختبار منطقي يتم تقييمه إلى TRUE "wins":
IFS (logical_test1،value_if_true1، [logical_test2، value_if_true2] ...)وفقًا للصيغة أعلاه ، يمكن إعادة بناء صيغة IF المتداخلة بهذه الطريقة:
=IFS(B2>150, 10%, B2>=101, 7%, B2>=51, 5%, B2>0, 3%)
يرجى الانتباه إلى أن ترجع الدالة IFS الخطأ # N / A إذا لم يتم استيفاء أي من الشروط المحددة. لتجنب ذلك ، يمكنك إضافة logical_test / value_if_true إلى نهاية الصيغة التي سترجع 0 أو سلسلة فارغة ("") أو أي قيمة تريدها إذا لم يكن أي من الاختبارات المنطقية السابقة هي TRUE:
=IFS(B2>150, 10%, B2>=101, 7%, B2>=51, 5%, B2>0, 3%, TRUE, "")
كنتيجة لذلك ، ستعيد الصيغة سلسلة فارغة (خلية فارغة) بدلاً من الخطأ # N / A إذا كانت الخلية المقابلة في العمود B هي فارغ أو يحتوي على نص أو رقم سالب.
ملاحظة. مثل IF المتداخلة ، تُرجع دالة IFS في Excel قيمة مطابقة للشرط الأول الذي يتم تقييمه إلى TRUE ، وهذا هو سبب أهمية ترتيب الاختبارات المنطقية في صيغة IFS.
لمزيد من المعلومات ، يرجى الاطلاع على وظيفة Excel IFS بدلاً من ذلك من IF المتداخلة.
اختر بدلاً من صيغة IF المتداخلة في Excel
هناك طريقة أخرى لاختبار شروط متعددة داخل صيغة واحدة في Excel وهي استخدام الدالة CHOOSE ، المصممة لإرجاع قيمة من القائمة على أساس موضع تلك القيمة.
عند تطبيق الصيغة على مجموعة البيانات النموذجية لدينا ، تأخذ الصيغة الشكل التالي:
=CHOOSE((B2>=1) + (B2>=51) + (B2>=101) + (B2>150), 3%, 5%, 7%, 10%)
في الوسيطة الأولى ( index_num ) ، تقوم بتقييم جميع الشروط وإضافة النتائج. معطىأن TRUE تساوي 1 و FALSE إلى 0 ، وبهذه الطريقة تحسب موضع القيمة المراد إرجاعها.
على سبيل المثال ، القيمة في B2 هي 150 دولارًا. بالنسبة لهذه القيمة ، تكون الشروط الثلاثة الأولى TRUE والأخيرة (B2 & gt؛ 150) هي FALSE. إذن ، index_num يساوي 3 ، مما يعني إرجاع القيمة الثالثة ، وهي 7٪.
نصيحة. إذا لم يكن أي من الاختبارات المنطقية هو TRUE ، فإن index_num يساوي 0 ، وتعيد الصيغة الخطأ #VALUE! خطأ. إصلاح سهل هو التفاف "اختيار" في دالة IFERROR مثل هذا:
=IFERROR(CHOOSE((B2>=1) + (B2>=51) + (B2>=101) + (B2>150), 3%, 5%, 7%, 10%), "")
لمزيد من المعلومات ، يرجى الاطلاع على وظيفة Excel CHOOSE مع أمثلة الصيغة.
دالة SWITCH كنموذج موجز لـ IF المتداخلة في Excel
في المواقف التي تتعامل فيها مع مجموعة ثابتة من القيم المحددة مسبقًا ، وليس المقاييس ، يمكن أن تكون وظيفة SWITCH بديلاً مضغوطًا عن معقدة عبارات IF المتداخلة:
SWITCH (تعبير ، قيمة 1 ، نتيجة 1 ، قيمة 2 ، نتيجة 2 ، ... ، [افتراضي])تقوم الدالة SWITCH بتقييم تعبير مقابل قائمة من قيم ويعيد النتيجة المقابلة لأول تطابق تم العثور عليه.
في حالة رغبتك في حساب العمولة بناءً على الدرجات التالية ، بدلاً من مبالغ المبيعات ، يمكنك استخدام هذا الاتفاق نسخة من صيغة IF المتداخلة في Excel:
=SWITCH(C2, "A", 10%, "B", 7%, "C", 5%, "D", 3%, "")
أو ، يمكنك إنشاء جدول مرجعي كما هو موضح في لقطة الشاشة أدناه واستخدام مراجع الخلايا بدلاً من القيم المشفرة:
=SWITCH(C2, $F$2, $G$2, $F$3, $G$3, $F$4, $G$4, $F$5, $G$5, "")
من فضلكلاحظ أننا نقوم بقفل جميع المراجع باستثناء المرجع الأول بعلامة $ لمنعها من التغيير عند نسخ الصيغة إلى خلايا أخرى:
ملاحظة. لا تتوفر وظيفة التبديل إلا في Excel 2016 والإصدارات الأحدث.
لمزيد من المعلومات ، يرجى الاطلاع على وظيفة التبديل - الشكل المضغوط لعبارة IF المتداخلة.
ربط دالات IF المتعددة في Excel
كما هو مذكور في المثال السابق ، تم تقديم وظيفة SWITCH فقط في Excel 2016. للتعامل مع المهام المماثلة في إصدارات Excel القديمة ، يمكنك دمج عبارتين IF أو أكثر باستخدام عامل التشغيل Concatenate (& amp؛) أو دالة CONCATENATE .
على سبيل المثال:
=(IF(C2="a", 10%, "") & IF(C2="b", 7%, "") & IF(C2="c", 5%, "") & IF(C2="d", 3%, ""))*1
أو
=CONCATENATE(IF(C2="a", 10%, ""), IF(C2="b", 7%, ""), IF(C2="c", 5%, "") & IF(C2="d", 3%, ""))*1
كما قد يكون لديك لاحظنا أننا نضرب النتيجة في 1 في كلتا الصيغتين. يتم ذلك لتحويل سلسلة تم إرجاعها بواسطة صيغة Concatenate إلى رقم. إذا كان الناتج المتوقع نصًا ، فلن تكون هناك حاجة إلى عملية الضرب.
لمزيد من المعلومات ، يرجى الاطلاع على وظيفة CONCATENATE في Excel.
يمكنك أن ترى أن Microsoft Excel يوفر حفنة من البدائل الجيدة إلى صيغ IF المتداخلة ، ونأمل أن يكون هذا البرنامج التعليمي قد أعطاك بعض الأدلة حول كيفية الاستفادة منها في أوراق العمل الخاصة بك. لإلقاء نظرة فاحصة على الأمثلة التي تمت مناقشتها في هذا البرنامج التعليمي ، يمكنك تنزيل نموذج المصنف أدناه. أشكرك على القراءة وآمل أن أراك على مدونتنا الأسبوع المقبل!