2015-12-10 23 views
0

我有一个excel公式,我想在找到三件事情之一后返回最右边的数据。但是,如果第一个搜索项未找到返回一个错误:搜索多个项目返回错误

=IFERROR(RIGHT(A1, LEN(A1)-SEARCH({")",">","#"},A1)),"") 

我怎样才能使这项工作的所有三个搜索字词?

当前其他搜索条件评估为#VALUE!如果第一项没有找到,导致公式失败。

回答

1

试试这个修改后的版本,输入作为数组公式(按Ctrl-Shift-Enter键,而不是仅仅进入)

=RIGHT(A1, LEN(A1)-MAX(IFERROR(SEARCH({")",">","#"},A1),0))) 

Max得到Search最大的结果。

如果没有字符出现在字符串中,则返回整个字符串

enter image description here

+0

恐怕仍然无法正常工作。当搜索返回一个错误时,IFERROR将它置空使MAX查找零。我可以将其更正为:= RIGHT(A1,LEN(A1)-MAX(IFERROR(SEARCH(“)”,A1),0),IFERROR(SEARCH(“>”,A1),0),IFERROR “#”,A1),0)))但是有什么办法可以让这个更优雅? – fileinster

+0

你作为_Array Formula_输入了吗?看到图像 –

+0

我刚刚意识到你说的CSE ...它的工作原理!不幸的是我从vbscript生成公式...我想是时候学习如何从vbscript输入一个CSE公式了! – fileinster