Sub Main()
Dim sArray, Arr(), tmp, Text As String, lR As Long, lC As Long, n As Long, maxC As Long
On Error GoTo ExitSub
With Sheet1.Range("A6:A1000")
sArray = .Value
n = 1: maxC = 2
ReDim Arr(1 To UBound(sArray, 1), 1 To maxC)
For lR = 1 To UBound(sArray, 1)
If Len(Trim(CStr(sArray(lR, 1)))) Then
Text = Trim(CStr(sArray(lR, 1)))
Arr(lR, 1) = Text
tmp = SepString(Text)
If IsArray(tmp) Then
If maxC < UBound(tmp) + 1 Then
maxC = UBound(tmp) + 1
ReDim Preserve Arr(1 To UBound(sArray, 1), 1 To maxC + 1)
End If
For lC = 1 To UBound(tmp) + 1
Arr(lR, lC + 1) = IIf(tmp(lC - 1) = "", 0, tmp(lC - 1))
Next
End If
End If
Next
.Resize(, maxC + 1).Value = Arr
End With
ExitSub:
End Sub