Public e(10)
Public de(10)
Public d(10)
Public s(10)
Public t(10)
Public dt(10)
Public dtt(10)
Public st(10)
Public mil(10)
Public dmil(10)
Public m(10): Public sk: Public zn: Public DL: Public hislo
Public mn As Integer
Function обраб()
'================== Сумма прописью ==========================================
'Это я сам насочинял вроде работает
If DL = 1 Then sk = Right(hislo, 1): один
If DL = 2 And Mid(hislo, 1, 1) = "1" Then sk = Mid(hislo, 2, 1): два
If DL = 2 And Mid(hislo, 1, 1) = "0" Then sk = Mid(hislo, 2, 1): один
If DL = 2 And Val(Mid(hislo, 1, 1)) > 1 Then sk = Mid(hislo, 1, 1): дес
If DL = 3 Then sk = Mid(hislo, 1, 1): сот
If DL = 4 Then sk = Mid(hislo, 1, 1): тыс
If DL = 5 And (Mid(hislo, 1, 1)) = "1" Then sk = Mid(hislo, 2, 1): тыся
If DL = 5 And Val(Mid(hislo, 1, 1)) > 1 Then sk = Mid(hislo, 1, 1): дтыс
If DL = 5 And Mid(hislo, 1, 1) = "0" Then sk = Mid(hislo, 1, 1): дтыс
If DL = 6 And Mid(hislo, 1, 1) = "1" Then sk = Mid(hislo, 1, 1): Стыс
If DL = 6 And Val(Mid(hislo, 1, 1)) > 1 Then sk = Mid(hislo, 1, 1): Стыс
If DL = 6 And Mid(hislo, 1, 1) = "0" Then sk = Mid(hislo, 1, 1): Стыс
If DL = 7 And Mid(hislo, 1, 1) = "1" Then sk = Mid(hislo, 1, 1): милл
If DL = 7 And Val(Mid(hislo, 1, 1)) > 1 Then sk = Mid(hislo, 1, 1): милл
If DL = 8 And Val(Mid(hislo, 2, 1)) > 1 Then sk = Mid(hislo, 2, 1): дмилл
If DL = 8 And (Mid(hislo, 2, 1)) = "0" Then sk = Mid(hislo, 2, 1): дмилл
End Function
Function один()
zn = zn & " " & e(sk)
End Function
Function два()
zn = zn & " " & de(sk)
End Function
Function дес()
zn = zn & " " & d(sk)
DL = DL - 1
hislo = Right(hislo, DL)
обраб
End Function
Function сот()
zn = zn & " " & s(sk)
DL = DL - 1
hislo = Right(hislo, DL)
обраб
End Function
Function тыс()
zn = zn & " " & t(sk)
DL = DL - 1
hislo = Right(hislo, DL)
обраб
End Function
Function тыся()
zn = zn & " " & dt(sk)
DL = DL - 2
hislo = Right(hislo, DL)
обраб
End Function
Function дтыс()
zn = zn & " " & dtt(sk)
If InStr(1, zn, "миллион") = 0 And Mid(hislo, 2, 1) = "0" Then zn = zn & " тысяч"
DL = DL - 1
hislo = Right(hislo, DL)
обраб
End Function
Function Стыс()
zn = zn & " " & st(sk)
If InStr(1, zn, "миллион") <> 0 And Mid(hislo, 2, 1) = "0" Then zn = zn & " тысяч"
DL = DL - 1
hislo = Right(hislo, DL)
обраб
End Function
Function милл()
zn = zn & " " & mil(sk)
DL = DL - 1
hislo = Right(hislo, DL)
обраб
End Function
Function дмилл()
zn = zn & " " & dmil(sk)
DL = DL - 2
hislo = Right(hislo, DL)
обраб
End Function
может из этого можно вырезать - без миллионов.....
|