我需要用第一個分隔符號分割儲存格(從右到左閱讀),以便我可以將該值放入另一個儲存格中。
例如,儲存格 A1 中的資料可能如下所示:
"something - more something - a lot more of something - (this is the text I need)"
儲存格 B1 需要值“(這是我需要的文字)”
到目前為止我所擁有的是:
=RIGHT(a1,LEN(FIND(RIGHT("-"),a1)))
但這似乎只回傳最後一個字元:“)”。
答案1
你需要這個公式:
=MID(A1,FIND("~~~~~",SUBSTITUTE(A1,"-","~~~~~",LEN(A1)-LEN(SUBSTITUTE(A1,"-",""))))+1,LEN(A1))
分解:
LEN(A1)-LEN(SUBSTITUTE(A1,"-",""))
計算儲存格內出現「-」的次數,
SUBSTITUTE(A1,"-","~~~~~",LEN(A1)-LEN(SUBSTITUTE(A1,"-","")))
然後將最後出現的“-”替換為“~~~~~”。如果「~~~~~」有可能在您的輸入中正常出現,請在此使用不同的值。
FIND("~~~~~",SUBSTITUTE(A1,"-","~~~~~",LEN(A1)-LEN(SUBSTITUTE(A1,"-",""))))+1
找到我們剛剛創建的“~~~~~”的位置,並添加一個,以便我們從它後面開始。最後,完整的公式使用該位置並MID()
提取所需的文字。
答案2
以上兩種方法都可以,但這裡有一些更容易理解的方法:
=TRIM(RIGHT(SUBSTITUTE(A1,"-",REPT(" ",LEN(A1))),LEN(A1)))