Здравствуйте! И снова я к Вам за помощью) Есть определенный текст. Необходимо объединить текст в ячейках между [expand=Описание] и [/expand] и поместить его в отдельную ячейку в той же строке, что и [expand=Описание]. Надеюсь, понятно объяснила, и это вообще возможно средствами Excel... Файл с исходным текстом и файл с итоговым текстом (что должно получиться) прилагаю.
Помогите, пожалуйста! Текст большой, вручную переносить очень долго(((((
Здравствуйте! И снова я к Вам за помощью) Есть определенный текст. Необходимо объединить текст в ячейках между [expand=Описание] и [/expand] и поместить его в отдельную ячейку в той же строке, что и [expand=Описание]. Надеюсь, понятно объяснила, и это вообще возможно средствами Excel... Файл с исходным текстом и файл с итоговым текстом (что должно получиться) прилагаю.
Помогите, пожалуйста! Текст большой, вручную переносить очень долго(((((Anpetu
Ваш вариант переносит в соседнюю ячейку только текст из одной ячейки, а мне нужно объединить текст между [expand=Описание] и [/expand] и поместить его в отдельную ячейку. Т.е. объединить нужно вот это, например:
[expand=Описание]Преимущества: Содержит экстракт моринга, глину и мелкие частички скраба. Удаляет ороговевший слой кожи, очищает поры от загрязнений, уменьшает количество черных точек, прекрасно удаляет ежедневные загрязнения и стойкий макияж. Способ применения: Пенка для умывания: выдавите на ладонь 2-3 см средства, добавьте немного воды, хорошо вспеньте. Полученную пену нанесите на заранее увлажненное лицо, после легкого массажа тщательно смойте водой. Очищающая маска: равномерно нанесите маску на кожу лица тонким слоем после высыхания смойте водой. Рекомендуется использовать 1-2 раза в неделю. [/expand]
Этот текст находится в нескольких строках. И такого текста различного много. Общее у него то, что он начинается с [expand=Описание] и заканчивается [/expand].
Ваш вариант переносит в соседнюю ячейку только текст из одной ячейки, а мне нужно объединить текст между [expand=Описание] и [/expand] и поместить его в отдельную ячейку. Т.е. объединить нужно вот это, например:
[expand=Описание]Преимущества: Содержит экстракт моринга, глину и мелкие частички скраба. Удаляет ороговевший слой кожи, очищает поры от загрязнений, уменьшает количество черных точек, прекрасно удаляет ежедневные загрязнения и стойкий макияж. Способ применения: Пенка для умывания: выдавите на ладонь 2-3 см средства, добавьте немного воды, хорошо вспеньте. Полученную пену нанесите на заранее увлажненное лицо, после легкого массажа тщательно смойте водой. Очищающая маска: равномерно нанесите маску на кожу лица тонким слоем после высыхания смойте водой. Рекомендуется использовать 1-2 раза в неделю. [/expand]
Этот текст находится в нескольких строках. И такого текста различного много. Общее у него то, что он начинается с [expand=Описание] и заканчивается [/expand].Anpetu
Сообщение отредактировал Anpetu - Суббота, 04.08.2018, 22:32
Sub ConcatRows() Dim cell As Range, cell1 As Range, addr$ With Me.[B:B] Set cell = .Find("[expand", .Cells(1), xlFormulas, xlPart, xlByRows, xlNext, False, False) addr = cell.Address Do If InStr(cell, "[/expand") = 0 Then Set cell1 = .Find("[/expand", cell, xlFormulas, xlPart, xlByRows, xlNext, False, False) With Me.Range(cell, cell1) cell = Join(Application.Transpose(Me.Range(cell, cell1)), vbLf) .Offset(1).Resize(.Count - 1).Delete xlUp End With End If Set cell = .Find("[expand", cell, xlFormulas, xlPart, xlByRows, xlNext, False, False) Loop While Not cell Is Nothing And cell.Address <> addr End With End Sub
[/vba]
до кучи, вариант на VBA[vba]
Код
Sub ConcatRows() Dim cell As Range, cell1 As Range, addr$ With Me.[B:B] Set cell = .Find("[expand", .Cells(1), xlFormulas, xlPart, xlByRows, xlNext, False, False) addr = cell.Address Do If InStr(cell, "[/expand") = 0 Then Set cell1 = .Find("[/expand", cell, xlFormulas, xlPart, xlByRows, xlNext, False, False) With Me.Range(cell, cell1) cell = Join(Application.Transpose(Me.Range(cell, cell1)), vbLf) .Offset(1).Resize(.Count - 1).Delete xlUp End With End If Set cell = .Find("[expand", cell, xlFormulas, xlPart, xlByRows, xlNext, False, False) Loop While Not cell Is Nothing And cell.Address <> addr End With End Sub