Menu

INDEX MATCH באקסל: חיפוש שמאלה, דו־כיווני, בכל גרסה

=INDEX(C2:C6,MATCH(F2,A2:A6,0)) מוצאת את השורה של F2 בעמודה A ומחזירה את הערך מאותה שורה בעמודה C. היא מחפשת שמאלה, עושה חיפושים דו־כיווניים ועובדת בכל גרסה של אקסל.

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

=INDEX(C2:C6,MATCH(F2,A2:A6,0)) מוצאת את השורה שבה F2 מופיע ב-A2:A6 ומחזירה את הערך מאותה שורה של C2:C6. MATCH מוצאת את המיקום, INDEX מביאה את הערך שבמיקום הזה. היא עובדת בכל גרסה של אקסל, והיא יכולה לחפש שמאלה.

מחיר של מוצר
G2
ABCDEFG
1ProductCategoryPriceCodeLook forPrice
2AppleFruit$1.20P-101Pear$1.50
3PearFruit$1.50P-102
4CarrotVegetable$0.80P-205
5BreadBakery$2.40P-310
6MilkDairy$1.10P-412
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

שנו את F2 ל-Milk ו-G2 יחזיר $1.10. שנו את C2:C6 ל-B2:B6 והוא יחזיר את הקטגוריה במקום.

איך INDEX ו-MATCH עובדות יחד

הנוסחה היא שני שלבים בתא אחד. כאן הם בתאים נפרדים, כדי שתוכלו לראות מה כל חלק מחזיר.

שני השלבים, אחד בכל תא
G3
ABCDEFG
1ProductCategoryPriceCodeLook forBread
2AppleFruit$1.20P-101Position4
3PearFruit$1.50P-102Price$2.40
4CarrotVegetable$0.80P-205
5BreadBakery$2.40P-310
6MilkDairy$1.10P-412
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

MATCH(G1,A2:A6,0) מחזירה 4, כי Bread הוא הפריט הרביעי של A2:A6. INDEX(C2:C6,4) מחזירה את הפריט הרביעי של C2:C6, $2.40. שימו את ה-MATCH בתוך ה-INDEX במקום G2 ויש לכם את הנוסחה בתא אחד. שני כללים גורמים לזה לעבוד:

  • שני הטווחים חייבים להתחיל באותה שורה ולהיות באותו גובה. MATCH(...,A2:A6,0) סופרת משורה 2, ולכן INDEX חייבת לקרוא את C2:C6, לא את C1:C6 (שהייתה מחזירה את השורה שמעל).
  • סיימו את MATCH ב-0. בלעדיו MATCH עושה התאמה משוערת שמניחה שעמודה A ממוינת, וברשימת שמות היא יכולה להחזיר את המיקום של השורה הלא נכונה. העמוד של MATCH מסביר את שלושת סוגי ההתאמה שלה.

אם הערך לא נמצא ברשימה, MATCH מחזירה #N/A וכך גם הנוסחה כולה. =IFNA(INDEX(C2:C6,MATCH(F2,A2:A6,0)),"Not found") מציגה טקסט במקום.

חיפוש שמאלה

VLOOKUP מחזירה עמודות שמימין לעמודה שבה היא מחפשת. ל-INDEX ול-MATCH לא אכפת מהסדר: חפשו בעמודה D, החזירו את עמודה A.

שם מוצר לפי הקוד שלו
G2
ABCDEFG
1ProductCategoryPriceCodeCodeProduct
2AppleFruit$1.20P-101P-310Bread
3PearFruit$1.50P-102
4CarrotVegetable$0.80P-205
5BreadBakery$2.40P-310
6MilkDairy$1.10P-412
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

P-310 מחזיר Bread. הקלידו P-205 ב-F2 כדי לקבל Carrot. עם VLOOKUP הייתם צריכים קודם להעביר את עמודת Code לתחילת הטבלה.

חיפוש דו־כיווני: INDEX עם שתי פונקציות MATCH

INDEX מקבלת מספר שורה ומספר עמודה. תנו לה טבלה שלמה ותנו ל-MATCH אחת למצוא את השורה ולאחרת למצוא את העמודה.

מכירות לפי אזור וחודש
B8
ABCD
1RegionJanFebMar
2North4,2003,9004,800
3South3,1003,6003,300
4East5,2004,7005,600
5West2,8003,0003,400
6RegionEast
7MonthMar
8Sales5,600
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

East היא שורה 3 של A2:A5 ו-Mar היא עמודה 3 של B1:D1, ולכן INDEX מחזירה את שורה 3, עמודה 3 של B2:D5: 5,600. ה-MATCH של השורה מחפשת למטה בעמודה הראשונה, ה-MATCH של העמודה מחפשת לרוחב שורת הכותרות, ושני הטווחים מיושרים עם הטבלה B2:D5.

למה INDEX MATCH עדיפה על VLOOKUP

=VLOOKUP(F2, A2:D6, 3, FALSE)
=INDEX(C2:C6, MATCH(F2, A2:A6, 0))

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

  • הוספת עמודה. הוסיפו עמודה בין Category ל-Price, וה-VLOOKUP עדיין מבקשת את עמודה 3, שהיא עכשיו העמודה הריקה החדשה. אקסל מתאים את C2:C6 בגרסת ה-INDEX ל-D2:D6 והיא ממשיכה לעבוד.
  • חיפוש שמאלה. כמו שמוצג למעלה: VLOOKUP לא יכולה, INDEX MATCH יכולה.

ב-Excel 2021 וב-Microsoft 365, XLOOKUP עושה את שני הדברים בפונקציה אחת עם ארגומנטים פשוטים יותר. INDEX MATCH היא עדיין הבחירה לקבצים שצריכים להיפתח ב-Excel 2019 ומטה, והחלק של INDEX שימושי גם לבד. לחיפושים לפי שני תנאים בבת אחת, ראו חיפוש עם כמה קריטריונים.

תרגול: חיפוש שמאלה

ייצוא מלאי
G2
ABCDEFG
1CodePriceStockProductLook forPrice
2P-101$1.2040AppleMilk
3P-102$1.5025Pear
4P-205$0.8060Carrot
5P-310$2.4015Bread
6P-412$1.1030Milk
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

תורכם: שמות המוצרים נמצאים בעמודה האחרונה. ב-G2, החזירו את המחיר של המוצר שב-F2 עם INDEX ו-MATCH.

תרגול: חיפוש דו־כיווני

ציוני מבחנים
B9
ABCD
1StudentMathScienceArt
2Ana788592
3Ben647188
4Cara958973
5Dev826779
6
7StudentCara
8SubjectScience
9Score
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

תורכם: ב-B9, החזירו את הציון של התלמיד שב-B7 במקצוע שב-B8.

שאלות נפוצות

איך INDEX MATCH עובדת?

MATCH מוצאת את המיקום של ערך בעמודה, ו-INDEX מחזירה את הערך שנמצא במיקום הזה בעמודה אחרת. ב-=INDEX(C2:C6,MATCH("Pear",A2:A6,0)), MATCH מחזירה 2 כי Pear הוא הפריט השני של A2:A6, ו-INDEX מחזירה את הפריט השני של C2:C6.

למה להשתמש ב-INDEX MATCH במקום ב-VLOOKUP?

היא יכולה להחזיר עמודה שנמצאת משמאל לעמודה שבה היא מחפשת, והיא לא נשברת כשמוסיפים עמודה בתוך הטבלה (אין מספר עמודה שיכול להתיישן). ב-Excel 2021 וב-Microsoft 365, XLOOKUP נותנת את אותם יתרונות בפונקציה אחת.

מה ה-0 ב-MATCH אומר?

הוא מבקש התאמה מדויקת. בלעדיו MATCH משתמשת ב-match_type 1, התאמה משוערת שמצפה שהעמודה תהיה ממוינת בסדר עולה, וברשימה לא ממוינת היא יכולה להחזיר את המיקום של השורה הלא נכונה.

איך עושים חיפוש דו־כיווני עם INDEX MATCH?

תנו ל-INDEX טבלה שלמה ושתי פונקציות MATCH, אחת לשורה ואחת לעמודה: =INDEX(B2:D5,MATCH("South",A2:A5,0),MATCH("Feb",B1:D1,0)) מחזירה את הערך במקום שבו השורה South פוגשת את העמודה Feb.

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

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

להתחיל