Excel多列數據對比五大解法
大家好,今天和大家分享「多列數據對比",有兩組數據需要對比,進行多條件精確匹配查找。A列到C列為原始數據,E到G為現有數據。兩組數據通過對比,如果姓名和身份證號完全一致,在H列返回姓名,效果如下圖
一、解法1
1、公式截圖
2、公式
=IFERROR(INDEX(A:A,MATCH(1,($A$1:$A$9=E2)*($C$1:$C$9=G2),0)),"")
3、公式解釋
match函數第2參數兩個條件都滿足返回0,否則返加0,然後查找1的位置就是我們要從A列引用的位置
index函數是一個引用函數,這裡用了2個參數,第1參數要引用的數據源,第2參數match返回的結果,因為第1參數是一列,所以只有2個參數就可以了
iferror這裡的作用是用來屏蔽錯誤值顯示空
二、解法2
1、公式截圖
2、公式
=IFERROR(INDEX(A:A,MATCH(E2&G2,$A$1:$A$9&$C$1:$C$9,0)),"")
3、公式解釋
原理和解法1差不多
區別:解法1是match函數第2參數兩個條件,而這個解法是把兩個條件變成一個條件
三、解法3
1、公式截圖
2、公式
=IFERROR(LOOKUP(1,0/(($A$1:$A$9=E2)*($C$1:$C$9=G2)),$A$1:$A$9),"")
3、公式解釋
lookup第1參數查找值是1
lookup函數第2參數0/(($A$1:$A$9=E2)*($C$1:$C$9=G2)),如果兩個條件都滿足就返回1,否則就返回0;而0/1=0,0/0報錯
根據lookup二分法查找原理,如果查找值大於等於第2參數最大的那個,那麼就定位第2參數最後一個數據位置,返回第3參數定位的位置的值
四、解法4
1、公式截圖
2、公式
=IFERROR(LOOKUP(1,0/($A$1:$A$9&$C$1:$C$9=E2&G2),$A$1:$A$8),"")
3、公式解釋
和解法3基本一樣,區別這個是把兩個條件連接起來作為一個條件判斷
這裡我就不多說了
五、解法5
1、公式截圖
2、公式
=IFERROR(VLOOKUP(E2&G2,CHOOSE(,$A$2:$A$9&$C$2:$C$9,$A$2:$A$9),2,0),"")
3、公式解釋
vlookup函數第1參數一般我們都是一個條件進行查找,如果要多個條件查找,那麼我們可以通過連字元&把多個條件連接一起就變成了一個條件查找值
同步,vlookup函數第2參數數據源的第1列也要通過連字元連接區域,然後藉助choose函數來更改數據源的顯示的位置


※使用text函數快速對單元格中的數字求和
※學會接受不完美的自己
※第四十七練:如何限制單元格中數據輸入的範圍?
※有時候text比if更好用
※萬能函數text的6應用大場景
TAG:Excel講堂 |