最難Excel查找公式:根據簡稱查全稱

【題目】如下圖所示,A列是公司全稱,要求在D列設置公式,根據C列的簡稱查找A列全稱。規則是查找返回的全稱要包含C列簡稱的每一個字符。如:

中石化 查找返回 中國石油化工總公司


最難Excel查找公式:根據簡稱查全稱


有很多同學參與本次答案的提交,公式也有寫的非常好的同學,只是或多或少有優化的空間。下面是蘭色寫的一個公式,供同學們參考吧。


=INDEX(A:A,MATCH(,MMULT(-ISERR(FIND(MID(C2,COLUMN(A:X),1),A$1:A6)),B1:B24+1),))


公式重點說明:

  • 用MID+Column函數對簡稱進行分割。
  • 用FIND函數逐個查找,成功返回位置(數字),不成功返回錯誤值。然後用ERROR轉換成TRUE或FALSE,錯誤的變成TRUE、正確的變成FALSE。用-(負號)再把TRUE轉換成-1,把FALSE轉換為0。
  • MMULT函數的作用是數組的分行求和。B2:B24+1是生成{1,1,1...} 24個1組成的數組。求和的結果,全匹配的行求和結果為0,其他為負值。
  • 用MATCH函數查找0的位置
  • 用INDEX函數返回A列的全稱。

注:估計很多函數新手看不明白這個公式,不過它很實用,建議同學們收藏起來備用吧。


分享到:


相關文章: