如何从包装的文本单元格中提取特定的文本行?

时间:2012-03-27 06:04:54

标签: excel vba line cell

是否可以通过VBA代码仅从包装的文本单元格中取出前两行

例如,包装的文本单元格的值为:

aaaaaaa

bbbbbbb

ccccccc

ddddddd

因此单元格包含4行包装文本。我需要提取

"aaaaaaaa

bbbbbbbb"

2 个答案:

答案 0 :(得分:1)

像这样的换行符的VBA代码是Chr10。所以你需要使用它来通过使用Mid函数找到第二个换行符的位置,并使用Left函数获取之前的所有字符。

如果没有人给出更明确的答案,我将在以后有时间测试时编辑这个问题。

修改

我刚刚注意到你说过"包裹文字"而不是像我想的那样是换行符。线条是仅按列大小创建的,还是有实际的换行符?

答案 1 :(得分:1)

使用A1中的文本,您可以尝试使用此公式来提取前两行:

 =LEFT(A1,FIND(CHAR(10),A1,FIND(CHAR(10),A1)+2))

您可以使用=SUBSTITUTE(...,CHAR(10)," ")用空格替换换行符。

如果您想使用VBA,可以使用:

 split(cells(1,1),chr(10))(0) & " " & split(cells(1,1),chr(10))(1)