Menu

איך להשוות בין שתי עמודות באקסל ולמצוא התאמות

כדי להשוות שתי עמודות שורה אחר שורה, השתמשו ב-=A2=B2 (או ב-EXACT לרגישות לאותיות). כדי למצוא ערכים בעמודה אחת שחסרים בשנייה, השתמשו ב-COUNTIF, MATCH או XLOOKUP, והדגישו את ההבדלים עם עיצוב מותנה.

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

כדי להשוות שתי עמודות שורה אחר שורה, הקלידו =B2=C2 ליד השורה הראשונה ומלאו למטה: TRUE פירושו ששני התאים תואמים, FALSE פירושו שהם שונים. כדי למצוא את הערכים של עמודה אחת שמופיעים במקום כלשהו בעמודה אחרת, בכל סדר, השתמשו במקום זה ב-=COUNTIF($B$2:$B$8,A2)>0.

מחירים ישנים וחדשים
D2
ABCDE
1ProductOldNewSame?Status
2Apple$1.20$1.20TRUESame
3Pear$1.50$1.60FALSEChanged
4Carrot$0.80$0.80TRUESame
5Bread$2.40$2.20FALSEChanged
6Milk$1.10$1.10TRUESame
7Cheese$4.50$4.90FALSEChanged
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

D3, D5 ו-D7 הם FALSE, וכלל העיצוב המותנה =$B2<>$C2 צובע את שלוש השורות האלה. עמודה E מציגה את אותה בדיקה במילים במקום TRUE ו-FALSE. שנו את C3 ל-1.5 ושורה 3 הופכת ל-Same.

השוואת שתי עמודות עם IF

=B2=C2 מחזירה TRUE או FALSE. עטפו אותה ב-IF כדי לבחור את המילים: =IF(B2=C2,"Same","Changed"), כמו בעמודה E שלמעלה. כדי להשאיר שורות תואמות ריקות ולסמן רק את ההבדלים, השתמשו ב-=IF(B2<>C2,"Changed",""). כדי להראות בכמה מספר השתנה, חסרו במקום להשוות: =C2-B2.

כדי לספור את ההבדלים בלי עמודת עזר, השוו את שני הטווחים בתוך SUMPRODUCT: =SUMPRODUCT(--(B2:B7<>C2:C7)) מחזירה 3 בגיליון שלמעלה.

בלי נוסחה: בחרו את B2:C7 כש-B2 הוא התא הפעיל, עברו ל-בית > חפש ובחר > מעבר מיוחד, בחרו הבדלים בשורות ולחצו על אישור (ב-Windows, Ctrl+\ עושה את אותו הדבר). אקסל בוחר את C3, C5 ו-C7, התאים ששונים מעמודה B בשורה שלהם; תנו להם צבע מילוי כדי לסמן אותם.

השוואה רגישה לאותיות עם EXACT

ההשוואה = מתעלמת מאותיות גדולות וקטנות: ab12 שווה ל-AB12. כשגודל האותיות חשוב (קודי מוצר, סיסמאות, מזהים), השתמשו ב-EXACT(A2,B2), שהיא TRUE רק כששני הטקסטים זהים תו אחר תו.

קודים עם גודל אותיות שונה
C2
ABCD
1CodeEnteredEqual?EXACT
2AB12AB12TRUETRUE
3CD34cd34TRUEFALSE
4EF56EF56TRUETRUE
5GH78Gh78TRUEFALSE
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

עמודה C, ההשוואה עם =, אומרת שכל הארבעה תואמים. EXACT אומרת ששורות 3 ו-5 שונות, כי cd34 ו-Gh78 משתמשים באותיות קטנות.

מציאת ערכים בעמודה אחת שחסרים בשנייה

כששתי הרשימות לא באותו סדר, השוו כל ערך לכל העמודה השנייה. COUNTIF($B$2:$B$8,A2) סופרת כמה פעמים A2 מופיע ב-B2:B8, ולכן >0 פירושו "נמצא" ו-=0 פירושו "חסר". סימני ה-$ משאירים את הטווח שבו מחפשים קבוע כשהנוסחה ממולאת למטה.

הלקוחות של ינואר ושל פברואר
C2
ABCD
1JanuaryFebruaryIn February?With MATCH
2AnaDanTRUETRUE
3BenFayTRUETRUE
4CaraAnaFALSEFALSE
5DanGusTRUETRUE
6EveHalFALSEFALSE
7FayIvyTRUETRUE
8GusBenTRUETRUE
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

Cara ו-Eve הם FALSE: הם קנו בינואר ולא בפברואר. MATCH נותנת את אותה תשובה בדרך אחרת: MATCH(A2,$B$2:$B$8,0) מחזירה את המיקום של A2 בעמודה B, או #N/A כשהוא לא שם, ו-ISNUMBER הופכת את זה ל-TRUE או FALSE. כדי לבדוק בכיוון השני (לקוחות חדשים בפברואר), שימו את אותה נוסחה ליד עמודה B עם הטווחים מוחלפים: =COUNTIF($A$2:$A$8,B2)>0.

השוואה בין שתי רשימות והחזרת ערך תואם

לעתים קרובות השאלה היא לא רק "האם זה שם" אלא "האם הערך שלידו תואם". כאן משווים חשבוניות לרשימת תשלומים בסדר אחר: XLOOKUP מוצאת כל חשבונית בתשלומים, מחזירה כמה שולם, ועמודה D משווה את זה לסכום החשבונית.

חשבוניות מול תשלומים
C2
ABCDEFG
1InvoiceAmountPaidMatch?Payment forPaid
2INV-101120120TRUEINV-103240
3INV-10285Not paidFALSEINV-101120
4INV-103240240TRUEINV-105140
5INV-1046060TRUEINV-10695
6INV-105150140FALSEINV-10460
7INV-1069595TRUE
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

ל-INV-102 אין תשלום, ולכן C3 אומר Not paid. על INV-105 שולמו 140 במקום 150, ולכן גם D6 הוא FALSE. הארגומנט האחרון של XLOOKUP, "Not paid", מחליף את ה-#N/A שערך חסר היה נותן. XLOOKUP דורשת Excel 2021 או Microsoft 365; ב-Excel 2019 השתמשו ב-=IFERROR(VLOOKUP(A2,$F$2:$G$6,2,FALSE),"Not paid"). בעמוד על XLOOKUP יש את שאר הארגומנטים.

הצגת הערכים שחסרים בעמודה השנייה

במקום עמודה של TRUE/FALSE, FILTER יכולה להחזיר את הערכים החסרים כרשימה. COUNTIF(B2:B8,A2:A8) עם טווח כארגומנט שני סופרת כל ערך של A בבת אחת, ו-FILTER משאירה את אלה שהספירה שלהם היא 0.

מי לא חזר
D2
ABCD
1JanuaryFebruaryNot in February
2AnaDan
3BenFay
4CaraAna
5DanGus
6EveHal
7FayIvy
8GusBen
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

תורכם: הציגו ב-D2 את לקוחות ינואר שלא נמצאים ברשימה של פברואר.

התשובה שופכת את Cara ו-Eve. גם =FILTER(A2:A8,ISNA(MATCH(A2:A8,B2:B8,0))) עובדת. אם כל הלקוחות חזרו, FILTER מחזירה #CALC!; הוסיפו ארגומנט שלישי למקרה הזה: =FILTER(A2:A8,COUNTIF(B2:B8,A2:A8)=0,"None"). FILTER דורשת Excel 2021 או Microsoft 365. ראו FILTER בשביל עוד תנאים.

הדגשת ההבדלים בין שתי עמודות

הנוסחאות שלמעלה עובדות גם ככללים של עיצוב מותנה. בחרו את הרשימה הראשונה, עברו ל-בית > עיצוב מותנה > כלל חדש > השתמש בנוסחה כדי לקבוע אילו תאים לעצב, והזינו את הנוסחה בשביל התא הראשון שלה. כאן A2:A8 מקבל =COUNTIF($B$2:$B$8,A2)=0 ו-B2:B8 מקבל =COUNTIF($A$2:$A$8,B2)=0: כל שם שנמצא רק באחת הרשימות נצבע.

שמות שנמצאים רק ברשימה אחת
A1
AB
1JanuaryFebruary
2AnaDan
3BenFay
4CaraAna
5DanGus
6EveHal
7FayIvy
8GusBen
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

Cara ו-Eve צבועים בינואר, Hal ו-Ivy בפברואר. בשתי עמודות שאמורות להתאים שורה אחר שורה, הכלל הוא =$A2<>$B2 על שתי העמודות, כמו בגיליון הראשון בעמוד הזה. כדי לצבוע במקום זה את השמות שנמצאים בשתי הרשימות, השתמשו ב->0, כמו בעמוד על הדגשת כפילויות.

למה ערכים זהים מוצגים כשונים

הסיבה הנפוצה ביותר היא רווח שאי אפשר לראות: Ana עם רווח בסוף לא שווה ל-Ana. נתונים שהודבקו ממערכת אחרת או מדף אינטרנט נושאים אותם לעתים קרובות. השוו במקום זה את הערכים אחרי TRIM.

רווח נסתר
C2
ABCD
1NameOther listEqual?Trimmed
2AnaAna FALSETRUE
3BenBenTRUETRUE
4Cara CaraFALSETRUE
5DanDanTRUETRUE
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

עמודה C אומרת ששורות 2 ו-4 שונות; עמודה D, אחרי ש-TRIM מסירה את הרווחים בשני הקצוות, אומרת שכל הארבעה תואמים. הסיבה הרגילה האחרת היא מספר שמאוחסן כטקסט בעמודה אחת ומספר אמיתי בשנייה: 101 ו-'101 נראים אותו דבר, אבל ההשוואה = של אקסל מחזירה FALSE, ו-MATCH, VLOOKUP ו-XLOOKUP לא מוצאות אחד בתוך השני. COUNTIF היא היוצאת מן הכלל: היא קוראת טקסט שנראה כמו מספר כאותו מספר, ולכן היא סופרת אותם כשווים. משולש ירוק בפינת התא מסמן את הגרסה שהיא טקסט; המירו אותה עם =VALUE(A2) או =A2*1, או בחרו את התאים ובחרו המר למספר מסמל האזהרה.

שאלות נפוצות

איך משווים בין שתי עמודות באקסל כדי למצוא התאמות?

שורה אחר שורה: הקלידו =A2=B2 ב-C2 ומלאו למטה; TRUE פירושו ששני התאים תואמים. כדי לבדוק אם כל ערך של A מופיע במקום כלשהו ב-B, השתמשו ב-=COUNTIF($B$2:$B$8,A2)>0.

איך משווים שתי עמודות ומחזירים ערך מהשנייה?

חפשו את הערך: =XLOOKUP(A2,$F$2:$F$7,$G$2:$G$7,"Not found") מחזירה את הערך התואם מ-G, או Not found. ב-Excel 2019 ובגרסאות ישנות יותר השתמשו ב-=IFERROR(VLOOKUP(A2,$F$2:$G$7,2,FALSE),"Not found").

האם השוואה של שני תאים באקסל רגישה לאותיות גדולות וקטנות?

לא. =A2=B2 מתייחסת ל-abc ול-ABC כשווים. להשוואה רגישה לאותיות השתמשו ב-=EXACT(A2,B2), שהיא TRUE רק כשכל תו תואם, כולל גודל האותיות.

איך מציגים את הערכים שנמצאים בעמודה אחת ולא בשנייה?

ב-Excel 365 וב-2021, =FILTER(A2:A8,COUNTIF(B2:B8,A2:A8)=0) שופכת כל ערך של A2:A8 שלא מופיע ב-B2:B8.

למה אקסל אומר ששני ערכים זהים שונים?

לרוב באחד מהם יש רווח מיותר או שהוא מספר שמאוחסן כטקסט. השוו =TRIM(A2)=TRIM(B2) כדי לשלול רווחים, והמירו מספרים שהם טקסט עם =VALUE(A2) או =A2*1.

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

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

להתחיל