修剪具有多个回车的单元格

时间:2014-07-13 22:44:36

标签: excel

我有来自csv格式导出报告的spreasheet,其中包含一个包含多行的地址字段。

以下是单元格内容的示例(我使用图像在每行末尾显示问号):

enter image description here

我需要从地址中提取郊区(在本例中为布鲁克林),但是我所遇到的问题是在某些情况下地址中有一条额外的行,例如:

enter image description here

在所有情况下,郊区将永远是倒数第二行,所以我虽然以某种方式向后工作,但我不知道如何将其作为公式。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分: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]次出现的换行符由下式给出:

FIND(CHAR(1),SUBSTITUTE(A1,"
",CHAR(1),(*n*-1)))

因此,最终公式由下式给出:

">"&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