Вы говорите по горизонтали и текст в столбцы, но затем продолжаете описывать разделение строк.
Для строк:
Если укладывать выходные данные в другой лист
Option Explicit
Sub splitcells()
Dim rng As Range, counter As Long, nextRow As Long
counter = 1
For Each rng In Intersect(Worksheets("sheet1").Columns("A"), Worksheets("Sheet1").UsedRange)
If counter = 1 Then
Worksheets("Sheet2").Range(rng.Address).Resize(UBound(Split(Trim(rng), "/")) + 1, 1) = Application.Transpose(Split(rng, "/"))
nextRow = UBound(Split(Trim(rng), "/"))
Else
Worksheets("Sheet2").Range(rng.Address).Offset(nextRow).Resize(UBound(Split(Trim(rng), "/")) + 1, 1) = Application.Transpose(Split(rng, "/"))
nextRow = nextRow + UBound(Split(rng, "/"))
End If
counter = counter + 1
Next rng
End Sub
Или
На том же листе (хотя это просто перезаписывает существующий в столбце А и расширяет)
Option Explicit
Public Sub splitcells()
Dim rng As Range, outputString As String
With Worksheets("Sheet1")
If Application.WorksheetFunction.CountIf(Intersect(.Columns("A"), .UsedRange), "*/*") = 0 Then Exit Sub
For Each rng In Intersect(.Columns("A"), .UsedRange)
If Not IsEmpty(rng) Then
outputString = outputString & "/" & rng.Value
End If
Next rng
outputString = Right$(outputString, Len(outputString) - 1)
.Range("A1").Resize(UBound(Split(outputString, "/")) + 1, 1).Value = Application.Transpose(Split(outputString, "/"))
End With
End Sub
Если бы это был текст в столбцы на другом листе, вы могли бы перейти:
Option Explicit
Sub splitcells()
Application.ScreenUpdating = False
Dim rng As Range
For Each rng In Intersect(Worksheets("sheet1").Columns("A"), Worksheets("Sheet1").UsedRange)
On Error Resume Next
Worksheets("Sheet2").Range(rng.Address).Resize(1, UBound(Split(rng, "/")) + 1) = Split(rng, "/")
On Error GoTo 0
Next rng
Application.ScreenUpdating = True
End Sub