Разделить значения в ячейке в массив - PullRequest
0 голосов
/ 27 мая 2020

У меня есть несколько ячеек, которые содержат значения, разделенные запятыми. Некоторые из этих ячеек начинаются либо с апострофа, либо с запятой, а другие начинаются с цифр. Я попытался использовать arrNew = range("A1").value (где ячейка A1 содержит данные, которые нужно поместить в массив), но это возвращает только переменную, содержащую всю строку.

Есть ли способ разделить данные, используя VBA, чтобы каждое значение в ячейке правильно находилось в массиве как отдельный элемент?

1 Ответ

3 голосов
/ 27 мая 2020

Попробуйте:

Public Function parsee(s As String)
    Dim arr, temp, i As Long
    arr = Split(s, ",")
    ReDim temp(1 To 1, LBound(arr) To UBound(arr))
    For i = LBound(arr) To UBound(arr)
        temp(1, i) = arr(i)
    Next i

    parsee = temp
End Function

enter image description here

Просто выберите блок ячеек, смежный с A1 и массив- введите формулу.

Поскольку я использую Excel 365, формулу не нужно вводить в массив; он просто проливается горизонтально.

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