萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 電腦基礎知識 >  >> 電腦入門

Excel 2003 兩欄資料比對四大經典公式:精準找出相同/不同/重複/差異值

處理大量資料時,人工肉眼比對兩欄資料極易遺漏且低效。Excel 內建函數組合可實現自動化、精準的比對,本文介紹四種經典公式模式,涵蓋逐列比對、重複值標記、差異值提取、VLOOKUP 跨欄查找,滿足不同業務場景。

方法一:IF + EXACT 逐列精確比對 (區分大小寫)

場景: A 欄與 B 欄同列比對,需嚴格區分大小寫 (如 "Apple" vs "apple")。

C2: =IF(EXACT(A2,B2),"相同","不同")
  • `EXACT` 區分大小寫比較兩字串,回傳 TRUE/FALSE。
  • 下拉填充至末列,即得逐列比對結果。

IF EXACT 公式示例

方法二:COUNTIF 標記重複值 (不區分位置)

場景: A 欄、B 欄各為客戶名單,找出同時出現在兩欄的名稱 (不限同列)。

C1: =IF(COUNTIF(A:A,B1)=0,"不重複","重複")
  • `COUNTIF(A:A,B1)` 計算 B1 值在整個 A 欄出現次數。
  • 結果 >0 表示重複。下拉填充 B 欄所有儲存格。
  • 配合條件格式高亮「重複」儲存格,視覺化更直觀。

COUNTIF 重複值標記

方法三:INDEX+MATCH+ISERROR 提取 A 欄中也存在於 B 欄的值

場景: 保留 A 欄原始值,僅輸出在 B 欄出現過的值,未出現留空。

C1: =IF(ISERROR(MATCH(A1,$B$1:$B$5,0)),"",A1)
  • `MATCH(A1,$B$1:$B$5,0)` 在 B1:B5 精確查找 A1,找到回傳位置數字,找不到回傳 `#N/A`。
  • `ISERROR` 將 `#N/A` 轉為 TRUE,其餘 FALSE。
  • `IF` 判斷:TRUE (未找到) 回傳空字串 `""`,FALSE (找到) 回傳 A1 原值。

MATCH ISERROR 提取重複值

方法四:VLOOKUP 雙向比對完整差異分析

場景: 完整對比 A 欄與 C 欄 (或任意兩欄),輸出四類狀態:A 有 C 無、C 有 A 無、雙方共有。

B1 (對應 A1): =IF(ISNA(VLOOKUP(A1,$C$1:$C$6,1,FALSE)),"←A有C無","←AC共有")
D1 (對應 C1): =IF(ISNA(VLOOKUP(C1,$A$1:$A$6,1,FALSE)),"←C有A無","←CA共有")
  • `VLOOKUP(查找值, 查找範圍, 1, FALSE)` 精確查找第一欄。
  • `ISNA` 專門捕捉 `#N/A` 錯誤 (查無此值)。
  • 雙向公式分別放在兩欄旁,下拉填充,即得完整差異地圖。

VLOOKUP 雙向比對

進階建議

  • 去除空白干擾:比對前用 `TRIM(CLEAN(...))` 清除不可見字元/空白。
  • 大數據量優化:將整欄引用 `A:A` 改為具體範圍 `$A$1:$A$10000`,或使用 Power Query / Power Pivot 更高效。
  • 條件格式輔助:「重複值」規則 (首頁→條件格式→醒目顯示單元格規則→重複值) 可直接高亮重複項,無需公式輔助欄。
  • Excel 365/2021 新函數: `XLOOKUP`、`FILTER`、`UNIQUE`、`TOCOL` 可單一公式完成以上所有邏輯,語意更清晰。
copyright © 萬盛學電腦網 all rights reserved