1) Есть строки, в одном столбце, на каждой строке идет текст вида: "Тучи угрюмые Ходят кругом И думу думают". Каким образом можно сделать так, что-бы в ячейке, перед каждой заглавной буквой - ставился перенос строки. Перед первой строкой не нужно, но это уже другая проблема...
2) Смысл такой-же, только в других ячейках, текст вида "1 туча 4 кругов 5 дум". Здесь тоже нужно сделать перенос на следующую строку, если встречается цифра.
Добрый.
1) Есть строки, в одном столбце, на каждой строке идет текст вида: "Тучи угрюмые Ходят кругом И думу думают". Каким образом можно сделать так, что-бы в ячейке, перед каждой заглавной буквой - ставился перенос строки. Перед первой строкой не нужно, но это уже другая проблема...
2) Смысл такой-же, только в других ячейках, текст вида "1 туча 4 кругов 5 дум". Здесь тоже нужно сделать перенос на следующую строку, если встречается цифра.AndAndR
Сообщение отредактировал AndAndR - Вторник, 28.05.2013, 15:01
Sub ert() Dim r As Range With CreateObject("vbscript.regexp") .Global = True: .Pattern = "[А-Я0-9]" For Each r In Range("A1", Cells(Rows.Count, 1).End(xlUp)) r = Mid(.Replace(r, Chr(10) & "$&"), 2) Next r End With End Sub
[/vba]
ПС у меня юбилей - 300 сообщений
например [vba]
Код
Sub ert() Dim r As Range With CreateObject("vbscript.regexp") .Global = True: .Pattern = "[А-Я0-9]" For Each r In Range("A1", Cells(Rows.Count, 1).End(xlUp)) r = Mid(.Replace(r, Chr(10) & "$&"), 2) Next r End With End Sub
Да, конечно, так лучше: .Pattern = " (?=[А-ЯЁ0-9])" и r = .Replace(r, vbCrLf) про "Ё" не знал, а с опережающей проверкой - сомневался. Прочь сомненья и больше тренироваться!
[offtop]Сергей, спасибо за поздравления! А сегодня "килобайтовый" юбилей (1024 дня) [/offtop]
Да, конечно, так лучше: .Pattern = " (?=[А-ЯЁ0-9])" и r = .Replace(r, vbCrLf) про "Ё" не знал, а с опережающей проверкой - сомневался. Прочь сомненья и больше тренироваться!
[offtop]Сергей, спасибо за поздравления! А сегодня "килобайтовый" юбилей (1024 дня) [/offtop]nilem