2017-07-26 132 views
0

我想在Excel中創建一個超級替代函數(如果有這樣的事情)。根據我的需要,嵌套是不夠的,因爲我的替代名單很長。多個替換或替換文本在Excel中使用表

我想要做的是有一個具有兩列的命名錶,該函數用作潛在替換的查找。第一列將包含原始文本,第二列將包含替換文本。

Sample Data

如果我們看一下上面的例子中,列R和S是由我的表,其列R作爲,我想在列S相當於行條目替換,如果發現原文我的列表。我在列V中的數據是我想要處理的列表。我希望列W中的公式查看列V中的等價項,並在表中查找文本中的任何匹配項。如果匹配,那麼我希望列R中的文本替換爲列S中的文本。在某些情況下,可以有2個匹配,如'LHR:JFK'的頂部示例,理想情況下應該替換爲'LON :紐約」。

有辦法用VBA做到這一點,但我想知道是否有相同的Excel公式選項,因爲我不知道從哪裏開始用VBA。

非常感謝您的幫助。

感謝, NEHA

回答

1

這樣做你會問:

=SUBSTITUTE(SUBSTITUTE(V2,LEFT(V2,3),IFERROR(VLOOKUP(LEFT(V2,3),R:S,2,FALSE),LEFT(V2,3))),RIGHT(SUBSTITUTE(V2,LEFT(V2,3),IFERROR(VLOOKUP(LEFT(V2,3),R:S,2,FALSE),LEFT(V2,3))),3),IFERROR(VLOOKUP(RIGHT(SUBSTITUTE(V2,LEFT(V2,3),IFERROR(VLOOKUP(LEFT(V2,3),R:S,2,FALSE),LEFT(V2,3))),3),R:S,2,FALSE),RIGHT(SUBSTITUTE(V2,LEFT(V2,3),IFERROR(VLOOKUP(LEFT(V2,3),R:S,2,FALSE),LEFT(V2,3))),3))) 

enter image description here

+0

感謝公式。它工作,但我注意到,當查找表中沒有任何內容匹配時,該公式只返回與列V中的單元格相同的值。如果查找表中沒有任何內容匹配,是否有方法返回空白單元格。 例如,'MAN:AMS'應返回空白單元格而不是返回'MAN:AMS'。 – nehshere

+0

該規範不是你原來的問題,還是我錯過了什麼? –

+0

不,你沒有錯過任何東西。我很抱歉,因爲我剛纔沒有意識到它。使用當前公式,它將替換列V中單元格中的一個或兩個代碼(如果與表格匹配)。我想補充一點,以便當兩個代碼都不匹配表中的任何內容時,它應該返回一個空白單元格。 對不起,額外的工作。你的幫助真的很感激。 – nehshere