天天看點

多對多查詢,Vlookup徹底不行了,這個新函數TEXTJOIN是真的牛!

作者:Excel從零到一

Vlookup真的不是萬能,畢竟都2023年了,新函數層出不窮,今天我們就來解決一個Excel中查找難題,相信很多人都遇到過。也是一個粉絲問到的問題

如下圖,我們想要在左側的表格中找到【1班與2班】對應的所有名字,并且把它們都放在1個單元格中,每個姓名與逗号隔開。

相信很多人的第一反應就是用Vlookup,但是它真的做不了。跟大家分享一個新的函數

多對多查詢,Vlookup徹底不行了,這個新函數TEXTJOIN是真的牛!

一、TEXTJOIN函數

TEXTJOIN:它是一個資料連結函數,作用是使用分隔符将資料連結在一起

文法:=TEXTJOIN(分隔符, ignore_empty, text1, [text2], …)

第一參數:分隔符

第二參數:是否忽略空單元格,true代表忽略空值,false則不忽略空值

第三參數:要連結的本文

第四參數:要連結的文本

以此類推,最多可以設定252個需要連結的文本

多對多查詢,Vlookup徹底不行了,這個新函數TEXTJOIN是真的牛!

用法很簡單,如上圖,我們想要使用逗号将【你】,【我】這兩個字連結在一起

公式:=TEXTJOIN(",",TRUE,C3:D3)

第一參數是連接配接符逗号,第二參數一般都【TRUE】表示忽略空值,第三參數就是需要連結的資料區域

二、查詢

想要實作上文提到的效果,我們還需要借助IF函數,先使用IF函數找到1班或者2班對應的所有名稱,然後将其放在TEXTJOIN的第三參數中即可。

公式:=TEXTJOIN(",",TRUE,IF($B$2:$B$16=E6,$C$2:$C$16,""))

在這裡關鍵就是IF函數,它的作用是判斷班級是不是等于1班,如果條件成立就傳回班級對應的名字,如果條件不成立就傳回空值

公式:IF($B$2:$B$16=E6,$C$2:$C$16,"")

多對多查詢,Vlookup徹底不行了,這個新函數TEXTJOIN是真的牛!

以上就是今天分享的全部内容了,這個案例,它有指定的名稱:合并同類項,也有人把它稱之為【多對多查詢】本質都是一樣的,解決方法都是這一個

我是Excel從零到一,關注我,持續分享更多Excel技巧!

以上内容,在我的專欄中都有講到,,現在已經更新了150多個章節,後期還會陸續新增章節,專欄永久有效,無時間限制,并且配備了課件

繼續閱讀