2014-07-13 24 views
0

我有一個csv格式的導出報告的spreasheet,其中包含一個包含多行地址的字段。帶多個回車的修剪單元返回

這裏是單元格內容的例子(我已經使用的圖像,以顯示問號在每一行的末尾):

enter image description here

我需要提取郊區(在這種情況下布魯克林)從地址但是challeneg我是有一些情況下,有在地址額外的線路,例如:

enter image description here

在所有情況下,郊區會主線是倒數第二線,所以我雖然是以某種方式倒退,但我不知道如何做它作爲一個公式。

任何幫助將非常感激。

回答

2

讓我們說,地址位於單元格A1。然後,下面的值會給你最後一行。

它是通過使用下面的僞代碼導出:

MID 
(A1, 
(the position of the [n-1]th new-line character) + 1, 
(the position of the [n]th new-line characters) - (the position of the n-1 new-line characters) - 1) 

其中使用下面的公式實現的:

新行字符的出現#由下式給出:

LEN(A1)-LEN(SUBSTITUTE(A1," 
","")) 

的[n]的第新行字符的出現由下式給出0

因此,最終的公式爲:

">"&MID(A1,FIND(" 
",A1,FIND(" 
",A1)+((LEN(A1)-LEN(SUBSTITUTE(A1," 
","")))-2))+1,(FIND(CHAR(1),SUBSTITUTE(A1," 
",CHAR(1),LEN(A1)-LEN(SUBSTITUTE(A1," 
","")))))-(FIND(" 
",A1,FIND(" 
",A1)+((LEN(A1)-LEN(SUBSTITUTE(A1," 
","")))-2)))-1)&"<" 

正如你所看到的,><字符最終公式連接起來,以確保有在最後的字符串中沒有多餘的字符。你可以省略這些連接。

參考

How to find nth occurrence (position) of a character in text string in Excel? on ExtendOffice

+0

冬青莫利:-)感謝您抽出寶貴時間來回答。我會放棄並報告。 CHeers,凱文。 – Spionred

+0

最終的公式並不完美,因爲它每次都給我最後一行。最後一行末尾似乎有一個CR/LF,之後有幾個空格。我試圖玩弄數字,但似乎無法弄清楚我需要改變以獲得第二名。 – Spionred

+0

如果我離開()該單元格去掉最後5個字符,那麼該公式很有用。我只需要確定如何在你的公式正確的功能工作.....可能:-) – Spionred