Function SPLITSYMBOL(iVal)
Dim arrLet(), arr()
Dim dic As Object
Dim iKey
Dim N&
On Error Resume Next
iVal = Trim(Str(iVal))
If IsNumeric(Mid(iVal, Len(iVal), 1)) Then iVal = iVal & 0
If Len(iVal) < 4 Then iVal = String(4 - Len(iVal), "0") & iVal
arrLet = Array("а", "б", "в", "г", "д", "е", "ё", "ж", "з", "и", "й", "к", "л", _
"м", "н", "о", "п", "р", "с", "т", "у", "ф", "х", "ц", "ч", "ш", _
"щ", "ъ", "ы", "ь", "э", "ю", "я")
Set dic = CreateObject("Scripting.Dictionary")
ReDim arr(1 To 1, 1 To Len(iVal))
For Each iKey In arrLet
N = N + 1
dic.Add iKey, N
Next
For N = UBound(arr, 2) To 1 Step -1
If dic.Exists(Mid(iVal, N, 1)) Then
arr(1, N) = dic(Mid(iVal, N, 1))
Else
arr(1, N) = Mid(iVal, N, 1)
End If
Next
SPLITSYMBOL = arr
End Function
|