This is a possible solution:
Option Explicit
Public Sub SplitIntToArray()
Dim inputString As String
inputString = "1927"
Dim cnt As Long
Dim myArr As Variant
ReDim myArr(Len(inputString) - 1)
For cnt = LBound(myArr) To UBound(myArr)
myArr(cnt) = Mid(inputString, cnt + 1, 1)
Next cnt
For cnt = LBound(myArr) To UBound(myArr)
Debug.Print myArr(cnt)
Next cnt
End Sub
It takes the inputString and based on its length it dimensionzes the myArr. Then it loops the newly dimensionized array and it assigns Mid(inputString, cnt+1,1) to every part of the array. THe cnt+1 is needed, because the first char of the string needs to be in the 0th element of the array, as the arrays start at zero.
You can also make a function, taking string and returning array:
Public Sub SplitIntToArray()
Dim inputString As String
Dim cnt As Long
Dim myArr As Variant
myArr = stringToArray("1927")
For cnt = LBound(myArr) To UBound(myArr)
Debug.Print myArr(cnt)
Next cnt
End Sub
Public Function stringToArray(inputString As String) As Variant
Dim cnt As Long
Dim returnArray As Variant
If Len(inputString) = 0 Then
stringToArray = Array()
Exit Function
End If
ReDim returnArray(Len(inputString) - 1)
For cnt = LBound(returnArray) To UBound(returnArray)
returnArray(cnt) = Mid(inputString, cnt + 1, 1)
Next cnt
stringToArray = returnArray
End Function