두 열을 행마다 비교하려면 첫 행 옆에 =B2=C2를 입력하고 아래로 채우세요. TRUE는 두 셀이 같다는 뜻이고 FALSE는 다르다는 뜻입니다. 순서와 관계없이 한 열의 값이 다른 열 어딘가에 있는지 찾으려면 대신 =COUNTIF($B$2:$B$8,A2)>0을 쓰세요.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Product | Old | New | Same? | Status |
| 2 | Apple | $1.20 | $1.20 | TRUE | Same |
| 3 | Pear | $1.50 | $1.60 | FALSE | Changed |
| 4 | Carrot | $0.80 | $0.80 | TRUE | Same |
| 5 | Bread | $2.40 | $2.20 | FALSE | Changed |
| 6 | Milk | $1.10 | $1.10 | TRUE | Same |
| 7 | Cheese | $4.50 | $4.90 | FALSE | Changed |
D3, D5, D7이 FALSE이고, 조건부 서식 규칙 =$B2<>$C2가 그 세 행을 칠합니다. E열은 같은 검사를 TRUE와 FALSE 대신 단어로 보여 줍니다. C3을 1.5로 바꾸면 3행이 Same으로 바뀝니다.
IF로 두 열 비교하기
=B2=C2는 TRUE나 FALSE를 반환합니다. IF로 감싸면 단어를 고를 수 있습니다: 위 E열처럼 =IF(B2=C2,"Same","Changed")입니다. 같은 행은 비우고 다른 것만 표시하려면 =IF(B2<>C2,"Changed","")를 쓰세요. 숫자가 얼마나 바뀌었는지 보려면 비교 대신 빼세요: =C2-B2.
도우미 열 없이 다른 개수를 세려면 SUMPRODUCT 안에서 두 범위를 비교하세요: 위 시트에서 =SUMPRODUCT(--(B2:B7<>C2:C7))는 3을 반환합니다.
수식 없이 하려면 B2가 활성 셀인 상태로 B2:C7을 선택하고 홈 > 찾기 및 선택 > 이동 옵션으로 가서 동일 행에서 값이 다른 셀을 고르고 확인을 누르세요(Windows에서는 Ctrl+\도 같습니다). 엑셀이 행에서 B열과 다른 셀인 C3, C5, C7을 선택하므로 채우기 색을 주어 표시하세요.
EXACT로 대소문자를 구분해 비교하기
= 비교는 대소문자를 무시합니다. ab12는 AB12와 같습니다. 제품 코드, 비밀번호, ID처럼 대소문자가 중요할 때는 두 텍스트가 글자 하나하나 같을 때만 TRUE인 EXACT(A2,B2)를 쓰세요.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Code | Entered | Equal? | EXACT |
| 2 | AB12 | AB12 | TRUE | TRUE |
| 3 | CD34 | cd34 | TRUE | FALSE |
| 4 | EF56 | EF56 | TRUE | TRUE |
| 5 | GH78 | Gh78 | TRUE | FALSE |
= 비교인 C열은 네 개 모두 같다고 합니다. EXACT는 cd34와 Gh78에 소문자가 있으므로 3행과 5행이 다르다고 합니다.
한 열에는 있고 다른 열에는 없는 값 찾기
두 목록의 순서가 같지 않다면 각 값을 다른 열 전체와 비교하세요. COUNTIF($B$2:$B$8,A2)는 A2가 B2:B8에 몇 번 나오는지 세므로 >0은 "찾음", =0은 "없음"을 뜻합니다. $ 기호는 수식을 아래로 채울 때 검색 범위를 고정합니다.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | January | February | In February? | With MATCH |
| 2 | Ana | Dan | TRUE | TRUE |
| 3 | Ben | Fay | TRUE | TRUE |
| 4 | Cara | Ana | FALSE | FALSE |
| 5 | Dan | Gus | TRUE | TRUE |
| 6 | Eve | Hal | FALSE | FALSE |
| 7 | Fay | Ivy | TRUE | TRUE |
| 8 | Gus | Ben | TRUE | TRUE |
Cara와 Eve는 FALSE입니다. 1월에는 구매했지만 2월에는 하지 않았습니다. MATCH는 다른 길로 같은 답을 줍니다. MATCH(A2,$B$2:$B$8,0)은 B열에서 A2의 위치를, 없으면 #N/A를 반환하고 ISNUMBER가 이를 TRUE나 FALSE로 바꿉니다. 반대 방향(2월의 새 고객)을 확인하려면 B열 옆에 범위를 바꾼 같은 수식을 쓰세요: =COUNTIF($A$2:$A$8,B2)>0.
두 목록을 비교하고 일치하는 값 반환하기
"있는가"만이 아니라 "옆의 값도 맞는가"가 궁금할 때가 많습니다. 여기서는 청구서를 순서가 다른 결제 목록과 비교합니다. XLOOKUP이 결제 목록에서 각 청구서를 찾아 결제 금액을 반환하고, D열이 그것을 청구 금액과 비교합니다.
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Invoice | Amount | Paid | Match? | Payment for | Paid | |
| 2 | INV-101 | 120 | 120 | TRUE | INV-103 | 240 | |
| 3 | INV-102 | 85 | Not paid | FALSE | INV-101 | 120 | |
| 4 | INV-103 | 240 | 240 | TRUE | INV-105 | 140 | |
| 5 | INV-104 | 60 | 60 | TRUE | INV-106 | 95 | |
| 6 | INV-105 | 150 | 140 | FALSE | INV-104 | 60 | |
| 7 | INV-106 | 95 | 95 | TRUE |
INV-102는 결제가 없으므로 C3은 Not paid라고 합니다. INV-105는 150 대신 140이 결제되었으므로 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인 것을 남깁니다.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | January | February | Not in February | |
| 2 | Ana | Dan | ||
| 3 | Ben | Fay | ||
| 4 | Cara | Ana | ||
| 5 | Dan | Gus | ||
| 6 | Eve | Hal | ||
| 7 | Fay | Ivy | ||
| 8 | Gus | Ben |
직접 해 보세요: D2에서 2월 목록에 없는 1월 고객을 나열하세요.
답은 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을 줍니다. 한 목록에만 있는 이름이 모두 칠해집니다.
| A | B | |
|---|---|---|
| 1 | January | February |
| 2 | Ana | Dan |
| 3 | Ben | Fay |
| 4 | Cara | Ana |
| 5 | Dan | Gus |
| 6 | Eve | Hal |
| 7 | Fay | Ivy |
| 8 | Gus | Ben |
1월에서는 Cara와 Eve가, 2월에서는 Hal과 Ivy가 칠해집니다. 행마다 같아야 하는 두 열이라면 이 페이지의 첫 번째 시트처럼 두 열에 모두 =$A2<>$B2 규칙을 쓰세요. 대신 두 목록 모두에 있는 이름을 칠하려면 중복 값 강조 페이지처럼 >0을 쓰세요.
똑같은 값이 다르게 나오는 이유
가장 흔한 이유는 보이지 않는 공백입니다. 끝에 공백이 붙은 Ana 는 Ana와 같지 않습니다. 다른 시스템이나 웹 페이지에서 붙여 넣은 데이터에 자주 들어 있습니다. 대신 정리한 값을 비교하세요.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Name | Other list | Equal? | Trimmed |
| 2 | Ana | Ana | FALSE | TRUE |
| 3 | Ben | Ben | TRUE | TRUE |
| 4 | Cara | Cara | FALSE | TRUE |
| 5 | Dan | Dan | TRUE | TRUE |
C열은 2행과 4행이 다르다고 하고, TRIM이 양 끝의 공백을 지운 D열은 네 개 모두 같다고 합니다. 다른 흔한 이유는 한 열에는 텍스트로 저장된 숫자, 다른 열에는 진짜 숫자가 있는 경우입니다. 101과 '101은 똑같아 보이지만 엑셀의 = 비교는 FALSE를 반환하고, MATCH, VLOOKUP, XLOOKUP은 한쪽에서 다른 쪽을 찾지 못합니다. COUNTIF는 예외로, 숫자처럼 보이는 텍스트를 그 숫자로 읽으므로 둘을 같다고 셉니다. 셀 모서리의 초록색 삼각형이 텍스트 쪽을 표시합니다. =VALUE(A2)나 =A2*1로 변환하거나, 셀을 선택하고 경고 아이콘에서 숫자로 변환을 고르세요.
자주 묻는 질문
엑셀에서 두 열의 일치 여부를 비교하려면 어떻게 하나요?
행마다 비교하려면 C2에 =A2=B2를 입력하고 아래로 채우세요. 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를 같다고 봅니다. 대소문자를 구분해 비교하려면 대소문자까지 모든 글자가 같을 때만 TRUE인 =EXACT(A2,B2)를 쓰세요.
한 열에는 있고 다른 열에는 없는 값을 나열하려면 어떻게 하나요?
Excel 365와 2021에서는 =FILTER(A2:A8,COUNTIF(B2:B8,A2:A8)=0)이 A2:A8 중 B2:B8에 없는 값을 모두 분산합니다.
엑셀이 똑같은 두 값을 다르다고 하는 이유는 무엇인가요?
대개 둘 중 하나에 공백이 더 있거나 텍스트로 저장된 숫자입니다. =TRIM(A2)=TRIM(B2)로 비교해 공백을 배제하고, 텍스트 숫자는 =VALUE(A2)나 =A2*1로 변환하세요.