Как извлечь определенную строку текста из обернутой текстовой ячейки? - PullRequest
2 голосов
/ 27 марта 2012

Можно ли взять только первые две строки из переносимой текстовой ячейки с помощью кода VBA?

Например, для переносимой текстовой ячейки может быть указано значение:

aaaaaaa

bbbbbbb

ccccccc

ddddddd

Таким образом, ячейка содержит 4 строки переноса текста.Мне нужно извлечь

"aaaaaaaa

bbbbbbbb"

Ответы [ 2 ]

1 голос
/ 27 марта 2012

С вашим текстом в 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)
1 голос
/ 27 марта 2012

Хорошо, код VBA для разрыва строки, такой как Chr10. Так что вам нужно использовать это, чтобы найти позицию разрыва второй строки, используя функцию Mid, и получить все символы до этого, используя функцию Left.

Если никто не дал более четкого ответа, я отредактирую этот вопрос позже, когда у меня будет время для тестирования.

EDIT

Я только что заметил, что вы сказали "завернутый текст", а не то, что это были разрывы строк, как я и предполагал. Строки создаются только по размеру столбца, или у вас есть реальные разрывы строк?

...