
IF
الدالة IF تُرجع إحدى قيمتين بناءً على ما إذا تم تقييم عبارة محددة إلى القيمة المنطقية TRUE أو FALSE أم لا.
IF(في حالة-الخطأ ;في حالة-الصواب ;تعبير-IF)
تعبير-IF: عبارة منطقية. تعبير-IF يمكن أن يتضمن أي شيء طالما أنه يمكن تقييم العبارة كقيمة منطقية. إذا كان ناتج تقييم التعبير عددًا، فإن القيمة 0 تُعد FALSE، بينما يُعد أي عدد آخر TRUE.
في حالة-الصواب: القيمة التي يتم إرجاعها إذا كانت نتيجة تعبير-IF هي TRUE. في حالة-الصواب يمكن أن تتضمن أية قيمة. إذا تم حذف في حالة-الصواب (توجد فاصلة، ولكن لا توجد قيمة) وتم تقييم تعبير-IF إلى TRUE، فتُرجع الدالة IF النتيجة 0.
في حالة-الخطأ: متغير اختياري يحدد القيمة التي يتم إرجاعها إذا كانت نتيجة في حالة-التعبير هي FALSE. في حالة-الخطأ يمكن أن تتضمن أية قيمة. إذا تم حذف في حالة-الخطأ (وضع فاصلة، ولكن دون قيمة) وتم تقييم تعبير-IF إلى FALSE، تُرجع الدالة IF النتيجة 0. إذا تم حذففي حالة-الخطأ بالكامل (لا توجد فاصلة بعد في حالة-الصواب) وتم تقييم تعبير-IF إلى FALSE، تُرجع الدالة IF النتيجة FALSE.
ملاحظات
يمكن أن تحتوي إحدى الوسيطتين أو كلتاهما، في حالة-الصواب وفي حالة-الخطأ، على دوال IF إضافية (ويُطلق عليها غالبًا دوال IF المتداخلة).
استخدام IF لإجراء مقارنات بسيطة |
|---|
يوضح الجدول أدناه طريقة بسيطة لتتبع درجات الطلاب. |
A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
1 | الطالب | درجة الاختبار 1 | درجة الاختبار 2 | الدرجة النهائية | التقدير بالأحرف | النتيجة النهائية |
2 | 1 | 56 | 59 | 59 | F | راسب |
3 | 2 | 75 | 84 | 84 | B | ناجح |
4 | 3 | 100 | 93 | 100 | A | ناجح |
يمكنك إجراء مقارنة IF بسيطة باستخدام هذه البيانات. فيما يلي بعض الطرق لاستخدام دالة IF: |
إرجاع قيمة نصية بناءً على المعايير: في هذه الصيغة، تُستخدم الوسيطات التالية:
تعمل هذه الصيغة على تعيين نتيجة "ناجح" إذا كانت درجة اختبار الطالب 1 تساوي 60 أو أعلى؛ وإلا يتم إرجاع "راسب". |
إرجاع قيمة رقمية بناءً على المعايير: في هذه الصيغة، تُستخدم الوسيطات التالية:
تحسب هذه الصيغة الدرجة النهائية على أنها أعلى درجة بين درجتي الاختبارين، ويمكن تعديلها بسهولة لأي طالب آخر في الجدول أعلاه عن طريق تغيير مراجع الخلايا لتتطابق مع درجات الطالب الصحيحة. |
استخدام دالة IF متداخلة لاختبار المزيد من الشروط: تعمل الصيغة أعلاه على تعيين نتيجة "ناجح" إذا كانت درجة واحدة على الأقل من درجات اختبار الطالب 60 أو أعلى. تعمل الصيغة أعلاه على تعيين تقدير بالأحرف بناءً على الدرجة النهائية للطالب. ملاحظة: باستخدام دالات IF المتداخلة، يكون ترتيب المقارنات مهمًا لأن الصيغة تتوقف بعد أول عبارة صحيحة. على سبيل المثال، إذا كنت تريد إضافة شرط جديد إلى صيغة التقدير بالأحرف "لم تتم الإجابة" إذا حصل الطالب على درجة 0، فأنت بحاجة إلى إضافته كشرط أول. ستؤدي إضافته في النهاية إلى إرجاع "F" حتى لو كانت الدرجة 0، لأنها ستكون قد تم بالفعل تقييمها على أنها أقل من 60. وهذا هو السبب كذلك في عدم الحاجة إلى تعبير-IF منفصل للتقدير بالأحرف "A"، إذا لم تكن درجة الطالب "B"، فهي كذلك لم تكن أي تقدير بالأحرف آخر، ويجب أن تكون "A". |
تجربة |
|---|
للاطلاع على دالة "IF" المستخدمة في جدول بيانات Numbers، أنشئ جدول بيانات جديدًا باستخدام القالب "دفتر الدرجات". أزِل اسمًا من جدول "عرض عام للفصل" ولاحظ كيف يغيّر ذلك القيمة في عمود "الدرجة النهائية". استكشف الدالة المستخدمة في عمود "الدرجة النهائية". |
استخدام دالة IF مع الدوال الأخرى |
|---|
تعمل الصيغة التالية مع ISBLANK لتحديد ما إذا كانت الخلية فارغة. في هذه الصيغة، تُستخدم الوسيطات التالية:
لمزيد من الاختبارات المعقدة، يمكنك أيضًا دمج دالة IF مع دالة AND ودالة OR ودالة NOT. |
المُضيّ قدمًا باستخدام الدالة IFS |
|---|
يمكن استخدام دالة IFS لتقييم سلسلة من التعبيرات وإرجاع قيمة بناءً على الشرط الأول الصحيح، مع استبدال عبارات "إذا" المتداخلة المتعددة. |
أمثلة إضافية |
|---|
("سالب" ;"غير سالب" ;0=<A5)IF= تُرجع النص "غير سالب" إذا كانت الخلية A5 تتضمن رقمًا أكبر من أو يساوي 0 أو قيمة غير رقمية. إذا كانت الخلية A5 تتضمن قيمة أقل من 0، فتُرجع الدالة "سالب". ("صفر" ;"غير صفري" ;0<>A5)IF= تُرجع النص "غير صفري" إذا كانت الخلية A5 تتضمن رقمًا غير 0. إذا كانت الخلية A5 تحتوي على 0، تُرجع الدالة "صفر". ("ليست كلها أرقام" ;"كلها أرقام" IF(IFERROR(OR(ISEVEN(B4+B5); ISODD(B4+B5)); FALSE)= تُرجع النص "كل الأرقام" إذا كانت الخليتان B4 و B5 تتضمنان أرقامًا، وإذا لم يكن الأمر كذلك، فإنها ستُرجع "ليست كلها أرقام". يتم القيام بذلك من خلال الاختبار لمعرفة ما إذا كان حاصل الخليتين زوجيًا أو فرديًا. إذا لم تكن الخلية رقمًا، فتُرجع الدالتان EVEN و ODD النتيجة FALSE، وتُرجع الدالة IFERROR النتيجة FALSE؛ وإذا لم يكن الأمر كذلك، فإنها تُرجع TRUE نظرًا إلى أن الدالة EVEN أو ODD هى TRUE. وإذا لم تكن أي من B4 أو B5 رقمًا أو قيمة منطقية، فإن عبارة IF تُرجع تعبير في-حالة-الخطأ، وهي "ليست كلها أرقام"؛ وإذا لم يكن الأمر كذلك، فإنها تُرجع تعبير في-حالة-الصواب وهي "كلها أرقام". |
أمثلة —تجنب الأخطاء الناتجة عن القسمة على 0 |
|---|
لا يمكن في بعض الأحيان إنشاء جدول بطريقة تتجنب القسمة على 0. إلا أنه، إذا حدثت القسمة على 0، فإن النتيجة تكون قيمة خطأ في الخلية التي عادةً لا تكون النتيجة المطلوبة. يوضح هذا المثال ثلاث طرق لتجنب هذا الخطأ. افترض أن الخليتين D2 وE2 تتضمن كل منهما رقمًا. من الممكن أن الخلية E2 تتضمن 0. كنت ترغب في قسمة D2 على E2، ولكنك تريد تجنب خطأ القسمة على 0. تُرجع كل من الطرق الثلاث التالية النتيجة 0 إذا كانت الخلية E2 تساوي 0؛ وإذا لم يكن الأمر كذلك، فتكون النتيجة D2/E2. =IF(E2=0; 0; D2/E2) تعمل من خلال اختبار الخلية E2 مباشرةً للتحقق مما إذا كانت 0. =IFERROR(D2/E2; 0) تعمل من خلال إرجاع 0 إذا حدث خطأ. تؤدي القسمة على 0 إلى حدوث خطأ. =IF(ISERROR(D2/E2); 0; D2/E2) تعمل عن طريق اختبار ما إذا كانت D2/E2 تُرجع خطأ، وفي هذه الحالة تُرجع 0. |
مثال باستخدام REGEX |
|---|
لتكن الخلية A1 "marina@example.com" ("لا يوجد بريد إلكتروني" ;"تحتوي على بريد إلكتروني" ;=IF(A1 = REGEX("([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+\.[A-Za-z]{2,4})") تُرجع "تحتوي على بريد إلكتروني". |





