Я пытаюсь разделить данные из одной ячейки на несколько строк, как показано ниже.

[Верхняя часть до, а нижняя после

Я использую приведенный ниже код:

Sub TransposeRange()

Dim rng As Range
Dim InputRng As Range, OutRng As Range
xTitleId = "Splitcell"
Set InputRng = Application.Selection.Range("A1")
Set InputRng = Application.InputBox("Range(single cell) :", xTitleId, InputRng.Address, Type:=8)
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
Arr = VBA.Split(InputRng.Range("A1").Value, Chr(9))
OutRng.Resize(UBound(Arr) - LBound(Arr) + 1).Value = Application.Transpose(Arr)
End Sub

1 ответ1

1

Убедитесь, что ваша ячейка ввода имеет горизонтальные вкладки. Ваш код:

Sub TransposeRange()
    Dim rng As Range
    Dim InputRng As Range, OutRng As Range

    xTitleId = "Splitcell"
    Set InputRng = Application.Selection.Range("A1")
    Set InputRng = Application.InputBox("Range(single cell) :", xTitleId, InputRng.Address, Type:=8)
    Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)

    Arr = VBA.Split(InputRng.Range("A1").Value, Chr(9))
    OutRng.Resize(UBound(Arr) - LBound(Arr) + 1).Value = Application.Transpose(Arr)
End Sub

Типичный результат:

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .