我想在excel中创建一个超级替代函数(如果有这样的话)。根据我的需要,嵌套是不够的,因为我的替换列表很长。
我想要做的是有一个带有两列的命名表,该函数用作查找潜在替换的函数。第一列包含原始文本,第二列包含替换文本。
如果我们看一下上面的例子,列R和S由我的表组成,列R作为我希望用S列中等效行条目替换的原始文本,如果在我的列表中找到的话。第V列中的我的数据是我想要处理的列表。我希望W列中的公式查看V列中的等效条目,并在表中查找文本中的任何匹配项。如果有匹配,那么我希望R列中的文本替换为S列中的文本。在某些情况下,可以有2个匹配,如LHR的顶部示例:JFK'理想情况下应该更换为“LON:NYC'
”有很多方法可以使用VBA,但我想知道是否有一个Excel公式选项,因为我不知道从哪里开始VBA。
非常感谢您的帮助。
谢谢, NEHA
答案 0 :(得分: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)))