Menu

IF מקונן באקסל: כמה תנאי IF עם דוגמאות

=IF(B2>=90,"A",IF(B2>=80,"B",IF(B2>=70,"C","F"))) שמה IF אחת בתוך אחרת כדי לבחור בין יותר משתי תוצאות. למדו איך קוראים IF מקונן, למה סדר התנאים חשוב, ומתי IFS או טבלת חיפוש הן הבחירה הטובה יותר.

כל גיליון בעמוד הזה חי: שנו מספר או נוסחה והוא יחושב מחדש.

IF מקונן הוא IF בתוך IF אחר, ומשתמשים בו כשיש יותר משתי תוצאות אפשריות. =IF(B2>=90,"A",IF(B2>=80,"B",IF(B2>=70,"C","F"))) נותנת A ל-90 ומעלה, B ל-80 עד 89, C ל-70 עד 79, ו-F מתחת ל-70.

ציונים מתוך נקודות
C2
ABC
1StudentScoreGrade
2Ana94A
3Ben81B
4Chloe70C
5Dan65F
6Eve88B
7Finn90A
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

לחצו על C2 והסתכלו בשורת הנוסחאות: שלוש פונקציות IF, ושלושה סוגריים סוגרים בסוף. שנו את הציון של Dan ב-B5 ל-75 והציון שלו משתנה מ-F ל-C.

איך קוראים IF מקונן

אקסל קורא את הנוסחה מההתחלה ועוצר בבדיקה הראשונה שהיא TRUE:

=IF(B2>=90, "A",
   IF(B2>=80, "B",
      IF(B2>=70, "C",
         "F")))
  1. האם הציון 90 או יותר? אז A, ושום דבר אחר לא נבדק.
  2. אחרת, האם הוא 80 או יותר? אז B. הבדיקה הזו לא צריכה לומר "ומתחת ל-90", כי ציון של 90 ומעלה אף פעם לא מגיע אליה.
  3. אחרת, האם הוא 70 או יותר? אז C.
  4. אחרת F, ה-value_if_false של ה-IF האחרונה.

כל IF פנימית יושבת במקום של value_if_false של זו שלפניה. אקסל מאפשר עד 64 רמות, אבל קשה לבדוק בעין נוסחה עם יותר מארבע או חמש. אקסל מקבל ירידות שורה בתוך נוסחה, כך שאפשר לסדר נוסחה ארוכה ככה בשורת הנוסחאות: לחצו Alt+Enter (ב-Windows) או Control+Option+Return (במק) לפני כל IF.

למה סדר התנאים חשוב

מכיוון שאקסל עוצר בבדיקה הראשונה שהיא TRUE, הספים צריכים ללכת מהגבוה לנמוך כשמשתמשים ב->=. בעמודה D יש את אותן שלוש בדיקות בסדר הפוך:

אותן בדיקות, בסדר הלא נכון
D2
ABCD
1StudentScoreRight orderWrong order
2Ana94AC
3Ben81BC
4Chloe70CC
5Dan65FF
6Eve88BC
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

בעמודה D כל מי שיש לו 70 ומעלה מקבל C: ציון של 94 עובר את הבדיקה הראשונה, B2>=70, ובדיקות ה-B וה-A אף פעם לא מגיעות. אם אתם מעדיפים להתחיל מהרמה הנמוכה, הפכו את האופרטורים: =IF(B2<70,"F",IF(B2<80,"C",IF(B2<90,"B","A"))) נותנת את אותם ציונים כמו עמודה C.

IF מקונן עם טקסט

הבדיקות יכולות להשוות גם טקסט. כאן דמי המשלוח תלויים באזור, וכל אזור שלא הוזכר מקבל את הערך האחרון:

דמי משלוח לפי אזור
C2
ABC
1OrderRegionFee
21001North$5.00
31002South$7.00
41003West$9.00
51004East$6.00
61005Islands$9.00
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

West ו-Islands לא מתאימים לאף אחת משלוש הבדיקות ומקבלים את הערך האחרון, $9.00. כשכל בדיקה משווה את אותו תא לערך קבוע, כמו כאן, SWITCH כותבת את אותו כלל עם כל אזור פעם אחת: =SWITCH(B2,"North",5,"South",7,"East",6,9). ראו את העמוד של SWITCH.

IF מקונן עם AND

IF מקונן יכול לשלב את הרמות שלו עם AND או OR כשרמה אחת תלויה בשני תאים. נציג עם מכירות של 2,000 ומעלה ולפחות 3 שנות ותק מקבל 10%, כל אחד אחר מעל 2,000 מקבל 5%, והשאר לא מקבלים כלום:

שיעור עמלה
D2
ABCD
1RepSalesYearsRate
2Ana2400410%
3Ben210015%
4Chloe150060%
5Dan3000310%
6Eve90020%
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

Ana ו-Dan זכאים ל-10%, ל-Ben יש את המכירות אבל לא את הוותק והוא מקבל 5%, ו-Chloe ו-Eve מקבלות 0%. גם כאן הסדר חשוב: הבדיקה המחמירה יותר באה ראשונה.

IFS: אותו דבר בלי קינון

ב-Excel 2019, Excel 2021 וב-Microsoft 365, IFS מקבלת את הבדיקות והתוצאות בזוגות, בלי IF פנימית ועם סוגר סוגר אחד. TRUE כבדיקה האחרונה פועלת כ"כל השאר":

=IFS(B2>=90,"A",B2>=80,"B",B2>=70,"C",TRUE,"F")

היא קוראת את התנאים באותו סדר ועוצרת בראשון שהוא TRUE, ולכן כלל הסדר שלמעלה עדיין חל. העמוד של IFS מסביר אותה, כולל ה-#N/A שהיא מחזירה כששום בדיקה לא מתאימה. ב-Excel 2016 ומטה IFS לא זמינה, וקובץ שמשתמש בה מציג שם #NAME?.

תרגול: עמלה בשלוש רמות

עמלה
C2
ABC
1RepSalesCommission
2Ana$6,200
3Ben$2,400
4Chloe$600
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

תורכם: ב-C2, שלמו 10% מהמכירות ב-B2 כשהן 5000 או יותר, 5% כשהן 1000 או יותר, ו-0 אחרת. הנוסחה מועתקת למטה עד C4.

טבלת חיפוש במקום הרבה IF

כשהרמות הן מספרים ויש יותר משלוש או ארבע מהן, שמרו את הספים בטבלה קטנה וחפשו בה. הטבלה ממוינת מהסף הנמוך ביותר כלפי מעלה, והתאמה משוערת (TRUE כארגומנט האחרון) מחזירה את השורה של הסף הגדול ביותר שאינו מעל הציון:

ציונים מטבלת רמות
C2
ABCDEF
1StudentScoreGradeMin scoreGrade
2Ana94A0F
3Ben81B70C
4Chloe70C80B
5Dan65F90A
6Eve88B
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

התוצאות זהות ל-IF המקונן שבראש העמוד. כדי להעביר את רמת ה-B ל-85, שנו את E4 ל-85: אף נוסחה לא משתנה, וכל ציון מתעדכן. עם XLOOKUP אותו חיפוש הוא =XLOOKUP(B2,$E$2:$E$5,$F$2:$F$5,,-1), כאשר -1 פירושו "התאמה מדויקת או הערך הקטן הבא"; אז הטבלה לא צריכה להיות ממוינת.

נסו בעצמכם: טבלת הרמות מוכנה, כתבו את החיפוש.

ציון עם VLOOKUP
C2
ABCDEF
1StudentScoreGradeMin scoreGrade
2Ana860F
370C
480B
590A
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

תורכם: ב-C2, החזירו את הציון עבור הנקודות ב-B2 מטבלת הרמות ב-E2:F5.

שאלות נפוצות

איך כותבים כמה תנאי IF באקסל?

שימו את ה-IF הבאה בארגומנט value_if_false של הקודמת: =IF(B2>=90,"A",IF(B2>=80,"B",IF(B2>=70,"C","F"))). אקסל בודק את התנאים מהראשון לאחרון ועוצר בראשון שהוא TRUE.

כמה פונקציות IF אפשר לקנן באקסל?

עד 64 רמות ב-Excel 2007 ואילך. הרבה לפני המגבלה הזו, נוסחה הופכת לקשה לקריאה ולבדיקה; עם יותר משלוש או ארבע רמות, טבלת חיפוש עם VLOOKUP או XLOOKUP בהתאמה משוערת קלה יותר לתחזוקה.

למה ה-IF המקונן שלי מחזיר תוצאה שגויה?

בדרך כלל כי התנאים בסדר הלא נכון. עם בדיקות >=, התחילו מהסף הגבוה ביותר: אם B2>=70 בא ראשון, ציון של 95 עוצר שם ומקבל את התוצאה של רמת ה-70.

במה אפשר להשתמש במקום IF מקונן באקסל?

IFS ב-Excel 2019 ואילך (=IFS(B2>=90,"A",B2>=80,"B",TRUE,"F")), SWITCH כשמשווים ערך אחד לערכים קבועים, וטבלת חיפוש עם =VLOOKUP(B2,$E$2:$F$5,2,TRUE) לטווחים מספריים.

איור של שפות התכנות ב-Coddy

ללמוד תכנות עם Coddy

להתחיל