Цифры прописью
цифр в словесную форму-текст:
Например : 100-20 - Сто рублей 20 коп.
3333121-23 - Три миллиона триста тридцать три тысячи сто двадцать пять рублей 23. коп.
Как для платежного поручения..
Зареннее благодарен.
Есть ли у кого готовый текст функции конвертации
цифр в словесную форму-текст:
Например : 100-20 - Сто рублей 20 коп.
3333121-23 - Три миллиона триста тридцать три тысячи сто двадцать пять рублей 23. коп.
Как для платежного поручения..
Зареннее благодарен.
Смотри здесь:
http://forum.codenet.ru/showthread.php?s=&threadid=9832
Смотри здесь:
http://forum.codenet.ru/showthread.php?s=&threadid=9832
Сам помню с этого начинал писать макросы...
Думал как написать по элегантнее эту функцию, потом заметил, что число можно делить по частям по 3 цифры и каждая последующая тройка будет отличаться от предыдущей словом типа: миллион, тысяча, например: 220 миллионов 222 тысячи 222 руб. А каждая из этих троек раскладывается по такому же принципу: в зависимости от позиции, двойка будет называться: двести, двадцать или два. Окончание слов миллион и тысяча зависят только от последней цифры.... вообщем как мне виделось два каких-то цикла пару тройка Select и мы получаем очень симпатичную маленькую функцию.
Написал и понес показывать в бухгалтерию (для которой все это и писалось), до этого протестил ее по разным числам, .... Как же я потом ржал вместе с девушками когда моя функция на число 213 написало следующее - "двести десять три рубля"... :) :) :)
Велик и могуч русский язык, из-за этих 11, 12, 13, ...., 19 пришлось изящный алгоритм переделывать на отлов этих исключений в каждой из тройки ... :( :)
1. Числа 1-10
2. Правило для чисел 13-19 и числа 11,12 (они не по правилам образуются)
3. Правило для чисел 40,50,...,90 и числа 20,30 (чуть-чуть не по правилам)
4. Правило для образования всех остальных чисел до 99 включительно
5. Число 100
6. Правило для образования чисел 101-999
и так далее.
В общем, последнее исключение - число 30.
Не таков русский язык.
1. Числа 1-10
2. Правило для чисел 11,13,15-19 и числа 12,14 (самую малость,но не по правилам)
3. Правило для чисел 50,60,70,80 и числа 20,30,40,90 (сорок и девяносто - это особые перлы русского словообразования)
4. Правило для образования всех остальных чисел до 99 включительно
5. Числа 100,200,300,400 и правило для 500-900
6. Правило для образования остальных чисел 101-999
А что уж говорить о порядковых числительных!
Я хотел было добавить в свою функцию возможность получения порядковых числительных, но понял, что закопаюсь в словах типа "восьмисотая" и забил на это дело (поскольку в жизни мне это еще ни разу не требовалось).
подцепи файлик как надстройку, появиться функция СуммаПрописью
Халтурите, молодой человек.
У вас десятки не отображаются. X)-
Халтурите, молодой человек.
У вас десятки не отображаются. X)-
Прошу прощения что сразу не сказал, файлик не мой, получен мною на одном из форумов, ссылку на автора сделать не могу, поскольку не знаю его, но тем не менее оч. ему благодарен, поскольку у меня все работает без проблем. Сообщи какая цифирка не сработала, я у себя попробую. Вдруг чего не заметил. У меня офис ХР.
Прошу прощения что сразу не сказал, файлик не мой, получен мною на одном из форумов, ссылку на автора сделать не могу, поскольку не знаю его, но тем не менее оч. ему благодарен, поскольку у меня все работает без проблем. Сообщи какая цифирка не сработала, я у себя попробую. Вдруг чего не заметил. У меня офис ХР.
Например,
123 => Сто три рубля 00 коп.
Так что мне моей функции более чем достаточно. 8)
Например,
123 => Сто три рубля 00 коп.
Так что мне моей функции более чем достаточно. 8)
А у меня все впорядке
123 => Сто двадцать три рубля 00 коп.
Может криво встало,попробуй переустановить.
А у меня все впорядке
123 => Сто двадцать три рубля 00 коп.
Может криво встало,попробуй переустановить.
Ну может, не буду спорить...
Я понимаю, что ты не автор, так что это не к тебе относится, но все же не могу не сказать.
Переустанавливать не буду, поскольку мне это не надо. Я вообще не люблю когда вот такие закрытые штуки дают. Это, конечно, демонстрирует крутизну автора, что он создал такой вот файлик, но ничему не учит того, кому дают. Когда открытая функция, человек может посмотреть, как она устроена, чего-нибудь для себя новое узнать. Кроме того, открытость используемого ресурса позволяет понять, чего от него ждать в сложных ситуациях.
Ну и так далее... :)
Когда открытая функция, человек может посмотреть, как она устроена, чего-нибудь для себя новое узнать. :)
вполне согласен, а еще посмотреть почему не работает, как в данном случае.:)
удачи