Excel VBA / разбить строку на столбцы на основе количества символов - PullRequest
0 голосов
/ 14 июня 2019

Я хотел бы разделить строку из 41 символа, как в примере ниже: 01288D29424001190601AJGBGR1413190528SR117

В различные столбцы, основанные на количестве символов слева направо, мой критерий постоянного числа символов для разделения строки:

  5     6     3    6    2   4    4     6    1 1  3

01288 D29424 001 190601 AJ GBGR 1413 190528 S R 117

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

1 Ответ

2 голосов
/ 14 июня 2019

Поместите ширину поля в B1 - L1 , а данные в A2 . Затем в B2 введите:

=LEFT(A2,B1)

и в C2 введите:

=MID($A$2,SUM($B$1:B$1)+1,C$1)

и скопируйте через:

enter image description here

Та же логика для VBA:

Sub poiuyt()
    Dim s As String, arr(0 To 10) As String, i As Long
    Dim msg As String

    msg = ""
    s = "01288D29424001190601AJGBGR1413190528SR117"
    wdth = Array(5, 6, 3, 6, 2, 4, 4, 6, 1, 1, 3)
    strt = Array(1, 6, 12, 15, 21, 23, 27, 31, 37, 38, 39)

    For i = 0 To 10
        arr(i) = Mid(s, strt(i), wdth(i))
        msg = msg & vbCrLf & arr(i)
    Next i

    MsgBox msg
End Sub

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...