2016-07-07 75 views
0
Cell A1: 0553400710 
Cell A2: John 
Cell B1: ['0553400710', '0553439406'] 

注:替代具有索引和匹配VLOOKUP在Excel

  1. 細胞B1具有一個固定的格式[ '編號', '號,' 數字」,......]
  2. A1和A2是用戶輸入值
  3. 我想在單元格B1中將0553400710與單元格B1中的['0553400710','0553439406']匹配。

如果匹配,我想返回A2:John。

這可能嗎?

我在here之前問過這個問題。它附有所有圖片。不幸的是沒有人能解決它。

誰給我一個答案最接近的一次是Jeeped其答案是

=IFERROR(INDEX(A:A, MATCH("*"&A1&"*",B:B, 0)+1), "") 

這裏的問題是,它需要的列數組,而不是排陣。我需要它作爲數據庫的最佳實踐行。有沒有人可以改進這個解決方案?

我也曾嘗試VLOOKUP如下但是失敗

enter image description here

這裏是參考 enter image description here

這裏的數據是我試圖匹配

enter image description here輸入

+0

它需要兩列數組,但一次只計算一行,直到找到匹配。我不明白這與數據庫有什麼不同。該功能是否有效?你只是想獲得更好的表現嗎? – 2016-07-07 11:15:28

+0

您可能會對本文感興趣[EXCEL VLOOKUP VS INDEX MATCH VS SQL VS VBA](http://analystcave.com/excel-vlookup-vs-index-match-vs-sql-performance/)。它是基準不同的查找方法。它說'DOUBLE TRUE VLOOKUP'執行所有其他工作表查找。 – 2016-07-07 11:20:34

+0

我希望用戶分別輸入'號碼'和'姓名'A1和B1。我不想把數字放在一個單元格中,並且他們的名字放在單元格下面的單元格中,並且有一長串名字號碼。 – Joanne

回答

0

可能嗎?

=IF(ISNUMBER(SEARCH(A1,B1)),A2,"number not found") 

這將在頂部您的示例工作。如果A1看起來像['0553400710'],您可以嘗試使用SUBSTITUTE公式來刪除標點符號。

不知道你在底部試圖做什麼,抱歉。