2015-12-10 92 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