No, my idea was you need two chr(32) between each element of data.
One Chr(32) is not going to cut it, that is why I suggested two.
I was curious to see if I could do it, so you are lucky, normally I would not do this, unless it interested me.
Code:
Sub SpliText(pstrString As String)
Dim i As Integer, iLen As Integer, iNewLen As Integer
Dim strAField() As String
iLen = Len(pstrString)
Do Until iLen = iNewLen
iLen = Len(pstrString)
pstrString = Replace(pstrString, Chr(32) & Chr(32) & Chr(32), Chr(32) & Chr(32))
iNewLen = Len(pstrString)
Loop
pstrString = Replace(pstrString, Chr(32) & "-", Chr(32) & Chr(32) & "-")
strAField = Split(pstrString, Chr(32) & Chr(32))
For i = 0 To UBound(strAField)
Debug.Print strAField(i)
Next
End Sub
Code:
splitext("?????? ?? ???? ?????? ???? 120-0000000007-55 -150.00 289 ??? ?? ???? xxxxx ?? yyyyyy 670000262-0217 /")
Result, allowing for I do not have those characters.
Code:
?????? ?? ???? ?????? ????
120-0000000007-55
-150.00
289
??? ?? ???? xxxxx ?? yyyyyy
670000262-0217
/
You will need to use the Val() function on those numeric fields as Split() returns a string.
However that should get you almost there?
NB: I have just used Debug.Print to confirm the array contents. Up to you to use them correctly.