سيؤدي تعديل زر التحكم إلى إعادة تحميل هذه الصفحة تلقائيًا

IF

تُرجع الدالة IF إحدى قيمتين بناءً على ما إذا تم تقييم عبارة محددة إلى القيمة المنطقية صواب أو خطأ أم لا.

IF(في حالة-التعبير‏; في حالة-الصواب‏; في حالة-الخطأ)

في حالة-التعبير: عبارة منطقية. في حالة-التعبير يمكن أن يتضمن أي شيء طالما أنه يمكن تقييم العبارة كقيمة بوليانية. إذا تم تقييم العبارة إلى رقم، 0 فسيتم اعتبارها خطأ، وسيتم اعتبار أي رقم آخر كصواب.

في حالة-الصواب: القيمة التي يتم إرجاعها إذا كانت نتيجة في حالة-التعبير هي صواب. في حالة-الصواب يمكن أن يتضمن أية قيمة. إذا تم حذف في حالة-الصواب (توجد فاصلة، ولكن لا توجد قيمة) وتم تقييم في حالة-التعبير إلى صواب، فتُرجع الدالة IF النتيجة 0.

في حالة-الخطأ: متغير اختياري يحدد القيمة التي يتم إرجاعها إذا كانت نتيجة في حالة-التعبير هي خطأ. في حالة-الخطأ يمكن أن يتضمن أية قيمة. إذا تم حذف في حالة-الخطأ (توجد فاصلة، ولكن لا توجد قيمة) وتم تقييم في حالة-التعبير إلى خطأ، فتُرجع الدالة IF النتيجة 0. إذا تم حذففي حالة-الخطأ بالكامل (لا توجد فاصلة بعد في حالة-الصواب) وتم تقييم في حالة-التعبير إلى خطأ، فتُرجع الدالة 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:

إرجاع قيمة نصية بناءً على المعايير:

محرر الصيغ يعرض الصيغة =IF‏(D2≥60‏;"ناجح"‏;"راسب"))‎.

في هذه الصيغة، تُستخدم الوسيطات التالية:

  • في حالة-التعبير: D2≥60، التي تتحقق لمعرفة ما إذا كانت درجة الطالب أكبر من أو تساوي 60.

  • في حالة-الصواب: "ناجح"، القيمة التي يتم إرجاعها إذا كانت السلسلة في الخلية D2 أكبر من أو تساوي 60.

  • في حالة-الخطأ: "راسب"، القيمة التي يتم إرجاعها إذا كانت السلسلة في الخلية D2 أقل من 60.

تعمل هذه الصيغة على تعيين نتيجة "ناجح" إذا كانت درجة اختبار الطالب 1 تساوي 60 أو أعلى؛ وإلا يتم إرجاع "راسب".

إرجاع قيمة رقمية بناءً على المعايير:

محرر الصيغ يعرض الصيغة =IF‏(C2>B2‏; C2‏; B2)‎.

في هذه الصيغة، تُستخدم الوسيطات التالية:

  • في حالة-التعبير: C2>B2. هذه تقوم بالتحقق لمعرفة درجة الاختبار الأكبر.

  • في حالة-الصواب: C2. إذا كانت C2 أكبر من B2، يتم إرجاع درجة الاختبار في C2.

  • في حالة-الصواب: B2. إذا كانت C2 أقل من B2، يتم إرجاع درجة الاختبار في B2.

تحسب هذه الصيغة الدرجة النهائية على أنها أعلى درجة بين درجتي الاختبارين، ويمكن تعديلها بسهولة لأي طالب آخر في الجدول أعلاه عن طريق تغيير مراجع الخلايا لتتطابق مع درجات الطالب الصحيحة.

استخدام دالة IF متداخلة لاختبار المزيد من الشروط:

محرر الصيغ يعرض الصيغة =IF‏(B2≥60، "ناجح"، IF‏(C2≥60، "ناجح"،"راسب"))‎.

تعمل الصيغة أعلاه على تعيين نتيجة "ناجح" إذا كانت درجة واحدة على الأقل من درجات اختبار الطالب 60 أو أعلى.

محرر الصيغ يعرض الصيغة =IF‏(D2<60‏،"F"، IF‏(D2<70‏،"D"‏; IF‏(D2<80،"C"، IF‏(D2<90،"B"،"A")))).

تعمل الصيغة أعلاه على تعيين تقدير بالأحرف بناءً على الدرجة النهائية للطالب.

ملاحظة: باستخدام دالات IF المتداخلة، يكون ترتيب المقارنات مهمًا لأن الصيغة تتوقف بعد أول عبارة صحيحة. على سبيل المثال، إذا كنت تريد إضافة شرط جديد إلى صيغة التقدير بالأحرف "not attempted" إذا حصل الطالب على درجة 0، فأنت بحاجة إلى إضافته كشرط أول. ستؤدي إضافته في النهاية إلى إرجاع "F" حتى لو كانت الدرجة 0، لأنها ستكون قد تم بالفعل تقييمها على أنها أقل من 60. وهذا هو السبب كذلك في عدم الحاجة إلى if-expression منفصل للتقدير بالأحرف "A"، إذا لم تكن درجة الطالب "B"، فهي كذلك لم تكن أي تقدير بالأحرف آخر، ويجب أن تكون "A".

تجربة

للاطلاع على دالة "IF" المستخدمة في جدول بيانات Numbers، أنشئ جدول بيانات جديدًا باستخدام القالب "دفتر الدرجات". أزِل اسمًا من جدول "عرض عام للفصل" ولاحظ كيف يغيّر ذلك القيمة في عمود "الدرجة النهائية". استكشف الدالة المستخدمة في عمود "الدرجة النهائية".

استخدام دالة IF مع الدوال الأخرى

تعمل الصيغة التالية مع ISBLANK لتحديد ما إذا كانت الخلية فارغة.

محرر الصيغ يعرض الصيغة =IF‏(ISBLANK‏(A2)‏;"yes"‏;"no")‎.

في هذه الصيغة، تُستخدم الوسيطات التالية:

  • في حالة-التعبير: ISBLANK‏(A2)، التي تتحقق لمعرفة ما إذا كانت الخلية A2 فارغة.

  • في حالة-الصواب: "نعم"، السلسلة التي يتم إرجاعها إذا كانت A2 فارغة.

  • في حالة-الخطأ: "لا"، السلسلة التي يتم إرجاعها إذا كانت A2 غير فارغة.

لمزيد من الاختبارات المعقدة، يمكنك أيضًا دمج دالة IF مع دالة AND ودالة OR ودالة NOT.

المُضيّ قدمًا باستخدام الدالة IFS

يمكن استخدام دالة IFS لتقييم سلسلة من التعبيرات وإرجاع قيمة بناءً على الشرط الأول الصحيح، مع استبدال عبارات "إذا" المتداخلة المتعددة.

محرر الصيغ يعرض الصيغة =IFS‏(D2<60‏;"F"‏;D2<70‏;"D"‏;D2<80‏;"C"‏;D2<90‏;"B"‏;D2≥90‏;"A")‎.

أمثلة إضافية

=IF‏(A5>=0‏; "Nonnegative"‏; "Negative") تُرجع النص "Nonnegative" إذا كانت الخلية A5 تتضمن رقمًا أكبر من أو يساوي 0 أو قيمة غير رقمية. إذا كانت الخلية A5 تتضمن قيمة أقل من 0، فتُرجع الدالة "سالب".

=IF‏(A5<>0‏; "Nonzero"‏; "Zero") تُرجع النص "Nonzero" إذا كانت الخلية A5 تتضمن رقمًا غير الـ 0. إذا كانت الخلية A5 تحتوي على 0، فتُرجع الدالة "Zero".

=IF‏(IFERROR‏(OR‏(ISEVEN‏(B4+B5)‏; ISODD‏(B4+B5))‏; خطأ)، "كل الأرقام"‏; "ليس كل الأرقام") تُرجع النص "كل الأرقام" إذا كانت الخليتان B4 وB5 تتضمنان أرقامًا‏; وإذا لم يكن الأمر كذلك، فإنها ستُرجع "ليس كل الأرقام". يتم القيام بذلك من خلال الاختبار لمعرفة ما إذا كان حاصل الخليتين زوجيًا أو فرديًا. إذا لم تكن الخلية رقمًا، فتُرجع الدالتان EVEN وODD النتيجة خطأ، وتُرجع الدالة IFERROR النتيجة خطأ؛ وإذا لم يكن الأمر كذلك، فإنها تُرجع TRUE نظرًا إلى أن الدالة EVEN أو ODD هى TRUE. وإذا لم تكن أي من B4 أو B5 رقمًا أو قيمة بوليانية، فإن عبارة IF تُرجع عبارة if-false، وهي "Not all numbers"؛ وإذا لم يكن الأمر كذلك، فإنها تُرجع عبارة if-true وهي "All numbers".

أمثلة —تجنب الأخطاء الناتجة عن القسمة على 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 هي صواب.

مثال باستخدام REGEX

لتكن الخلية A1‏ "marina@example.com"

=IF‏(A1 = REGEX‏("‏([A-Z0-9a-z._%+-]+)@‏([A-Za-z0-9.-]+\.[A-Za-z]{2‏;4})")‏; "تحتوي على بريد إلكتروني"‏; "لا يوجد بريد إلكتروني") تُرجع "تحتوي على بريد إلكتروني".

انظر أيضًاANDNOTORIFSIFERROR
Morty Proxy This is a proxified and sanitized view of the page, visit original site.
هل كان هذا مفيدًا؟
الحد الأقصى للأحرف: 250
الحد الأقصى للأحرف 250.
شكرًا على ملاحظاتك.
Morty Proxy This is a proxified and sanitized view of the page, visit original site.