قاعدة if البسيطة والمركبة
عند استخدام دالة if، يتم إرجاع قيمة عددية أو نص بناءً على شرط
معين، وإذا لمْ يتحقَّق يتم إرجاع قيم أخرى.
بنية دالة if البسيطة
=if(logical test, [value if true], [value if false])
- Logical test : هو سؤال
منطقي بسيطٌ مثلًا c1<100 أو c3>S3 أو أي سؤال آخر أكثر تعقيدًا، مثلًا: sum (A1:A10)>100 - Value_ if true: ترمز للإجابة في حالة إن كانت
الإجابة على السؤال المنطقي بنعم، ويمكن أن تكون فراغًا، أي عدم كتابة أي شيء
مكانها، أو قيمة نصية، أو قيمة عددية. مثلًا: عند إظهار نتيجة الطالب إذا
كانت A1> 100، يمكن كتابه
“ناجح”، أو ترجع قيمة 100 مثلًا، أو يُترك مكانها فارغًا. - Value_ if false : ترمز إلى الإجابة على السؤال بلا (خطأ).
ويمكن إرجاعها عددًا أو نصًا أو فراغًا مثل الحالة السابقة تمامًا.
بنية دالة IF المركبة
تتكون بنية الدالّة من استخدام أكثر من
دالة لـ IF الشرطية في دالة
واحدة، أي أكثر من شرط أو أكثر من سؤال في معادلة واحدة.
ومثال على ذلك:
إذا أردت حساب نسبة الربح، فإذا كان
سعر المنتج أقل من 100، إذًا نسبة الربح تكون 5%، وإذا لم يتحقق الشرط تكون نسبة
الربح 10%.
بهذا الشكل التالي:
=IF (c3<= 100, 5%, 10%)
بنية دالة IF المركبة
=IF
(logical test1, [value if true], IF(logical test2), [value if true],IF(logic
test3),[value if true),[value if false])
ومثال على البنية:
إذا أردنا حساب نسبة الربح على المنتج، فإذا كان سعره:
- أقل من أو يساوى 100، نحسب نسبة الربح 5%.
- وإذا كان أقل من أو يساوى 1000، نحسب نسبة الربح 10%.
- وإذا كان أقل من أو يساوى 3000، نحسب نسبة الربح 15%.
- والأكثر من ذلك تكون 20%.
=IF (C3<=
100,5%,IF(C3<-1000,10%,IF(C3<=3000, 15%,20%)))
AND,OR, IFERRORدمج IF مع دوال
يُستخدم هذا الدمج إذا كنت بحاجة إلى
اختيار أكثر من شرط معًا.
1- دمج IF مع دالة AND
بوجود شرطين أو أكثر ولا بد أن يتحققوا
معًا، لتكون النتيجة، TRUE
وإذا لم يتحقق أحد الشروط تكون النتيجة FALSE
فتكون بنية الدالة كالتالي:
=IF (AND) logical test, logical test),
[value if true], [value if false])
ومثال على ذلك:
إذا أردت كتابه نتيجة طالب لتعرف إن
كان ناجحًا أم لا، فلا بد أن تتحقق الشروط جميعًا ويكون ناجحًا في كل المواد،
حينها يُكتَب له PASS.
أما غير ذلك فيُكتب له راسب أو
FAIL.
ونكتب المعادلة التالية:
2- دمج IF مع دالة OR
تُستخدم OR في حالة إذا أردت أن تختبر أكثر من شرط،
ولكن ليس بالضروري أن يتحققوا كلهم، فإذا تحقق شرط واحد يكفي لتكون الإجابة TRUE
ومثال على ذلك:
إذا كان Score1 أكبر من 30، أو score2 أكبر من 30 تكون النتيجة Pass
ويمكن استخدام دوال AND, OR معًا، كما في
المثال التالي:
إذا كان الـ SCOR1 >=30 , SCORE 2>=30 أوSCORE1>=10, SCORE2>=15، وإذا تحقق شرط من
الاثنين تكون النتيجة، TRUE
وإذا لم يتحقق شيء تكون FALSE
=IF(OR(AND(D3>=30,E3>=30),AND(D3>=10,E3>=15)),”PASS”,”FAIL”)
3- دالة IFERROR
تُستخدم لإرجاع قيمه نصية أو عددية إذا
كان هناك خطأ، بدلًا من رسائل الإكسيل المعتادة في حالة وجود خطأ في بنية الدالة.
ومثال على ذلك:
إذا أردت قسمة عددين ولكن غير مسموح بهذه القسمة، مثلًا القسمة على 0
– فبدون استخدام قاعده IFERROR ستكون النتيجة DIV/0!#
– أو القسمة على اسم، تكون النتيجة! VALUE#
كما في الصورة التالية:
أما عند استخدام قاعدة IFERROR، فتكون النتيجة كما تكتبها.
ومثال على ذلك:
في حالة وجود خطأ، يُكتَب: ERROR IN CALCULATION
=IFERROR (D3/E3,” ERROR IN
CALCULATION”)
وفي نهاية المقالة نتمنى أن نكون قد
أفدناكم بكل ما يخصُّ بنيات هذه الدوال في برنامج الإكسيل، وسوف نحدد لكم موعدًا
جديدًا مستقبلًا.
أسرة احترف الإكسيل