Борис Гость
|
Добавлено: Пн Окт 28 2002 18:00 Заголовок сообщения: Re: Сумма прописью: Бери, не жалко. Знак "меньше" заменен словом "МЕНЬШЕ" |
|
|
Private sНазв, sСуммаПрописРус9, sСуммаПрописРус999, sСуммаПрописРус As String Private iСоотвНазв, iКопЦел, iКопДоля, iПадеж, iСуммMod100, iРазр As Integer Private curРуб, curКоп, curТек, curВрем As Currency
Function СуммаПрописРус999(ByVal iЧисл As Integer, ByVal iРод As Integer) Dim asЧисл, aiРодыЧисл asЧисл = Array( _ Array(Array("одинннадцать"), Array("двенадцать"), Array("тринадцать"), Array("четырнадцать"), Array("пятнадцать"), Array("шестнадцать"), Array("семнадцать"), Array("восемнадцать"), Array("девятнадцать")), _ Array(Array("один", "одна"), Array("два", "две"), Array("три"), Array("четыре"), Array("пять"), Array("шесть"), Array("семь"), Array("восемь"), Array("девять")), _ Array(Array("десять"), Array("двадцать"), Array("тридцать"), Array("сорок"), Array("пятьдесят"), Array("шестьдесят"), Array("семьдесят"), Array("восемьдесят"), Array("девяносто")), _ Array(Array("сто"), Array("двести"), Array("триста"), Array("четыреста"), Array("пятьсот"), Array("шестьсот"), Array("семьсот"), Array("восемьсот"), Array("девятьсот"))) aiРодыЧисл = Array( _ Array(Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0)), _ Array(Array(0, 1), Array(0, 1), Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0)), _ Array(Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0)), _ Array(Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0), Array(0, 0)))
iСоотвНазв = iЧисл \ 100 - 1 iЧисл = iЧисл Mod 100 If iСоотвНазв >= Then sСуммаПрописРус999 = asЧисл(3)(iСоотвНазв)(aiРодыЧисл(3)(iСоотвНазв)(iРод)) Else sСуммаПрописРус999 = ""
If iЧисл >= 11 And iЧисл МЕНЬШЕ= 19 Then iСоотвНазв = iЧисл - 11 sСуммаПрописРус9 = asЧисл(0)(iСоотвНазв)(aiРодыЧисл(0)(iСоотвНазв)(iРод)) sСуммаПрописРус999 = IIf(sСуммаПрописРус999 = "", _ sСуммаПрописРус9, _ sСуммаПрописРус999 & " " & sСуммаПрописРус9) Else iСоотвНазв = iЧисл \ 10 - 1 iЧисл = iЧисл Mod 10 If iСоотвНазв >= Then sСуммаПрописРус9 = asЧисл(2)(iСоотвНазв)(aiРодыЧисл(2)(iСоотвНазв)(iРод)) sСуммаПрописРус999 = IIf(sСуммаПрописРус999 = "", _ sСуммаПрописРус9, _ sСуммаПрописРус999 & " " & sСуммаПрописРус9) End If iСоотвНазв = iЧисл - 1 If iСоотвНазв >= Then sСуммаПрописРус9 = asЧисл(1)(iСоотвНазв)(aiРодыЧисл(1)(iСоотвНазв)(iРод)) sСуммаПрописРус999 = IIf(sСуммаПрописРус999 = "", _ sСуммаПрописРус9, _ sСуммаПрописРус999 & " " & sСуммаПрописРус9) End If End If
СуммаПрописРус999 = sСуммаПрописРус999 End Function
Function СуммаПрописРус(curСумма As Currency, Optional ByVal iРег As Integer = 0) If curСумма >= Then Dim asРазр, aiПадежиРазр, aiРодыРазр asРазр = Array( _ ... |
|