Макрос Excel для разделения текста в ячейке на несколько строк фиксированное количество символов - PullRequest
0 голосов
/ 11 июля 2019

У меня есть одна ячейка с

abcd efg hi jklm    efghijk          abcdedfg ijkl

Мне нужно разделить текст каждые 20 символов в новую строку, поэтому я получаю

Row2 - abcd efg hi jklm
Row3 - efghijk
Row4 - abcdedfg ijkl

Изображение:

Better data

Я добавил лучшее описание того, что мне нужно делать с данными, предлагаемый код работает очень хорошо и разбивает данные каждые 20 символов на новые строки, мне нужно дополнительно разделить данные, если кто-то может помочь мне Буду признателен за это.

1 Ответ

2 голосов
/ 11 июля 2019

Попробуйте:

Sub SplitStringFixed()
    Dim s As String, i As Long
    s = [A1]
    For i = 1 To (Len(s) / 20) + 1
        Cells(i + 1, 1).Value = Mid(s, 1 + (i - 1) * 20, 20)
    Next i
End Sub

enter image description here

Без VBA вы можете просто поставить:

=MID($A$1,20*(ROWS($1:1)-1)+1,20)

и скопируйте вниз.

РЕДАКТИРОВАТЬ # 1:

Из-за наличия пробелов трудно увидеть детали разделения.Вот карта:

enter image description here

...