Добрый день! Прошу помочь. Нужна формула числа прописью. Именно ЧИСЛА прописью, а не денег с копейками и рублями. Есть формула как в приложенном файле, может получится её как нибудь доработать. И ещё одно важное условие: файл должен быть без макросов.
Добрый день! Прошу помочь. Нужна формула числа прописью. Именно ЧИСЛА прописью, а не денег с копейками и рублями. Есть формула как в приложенном файле, может получится её как нибудь доработать. И ещё одно важное условие: файл должен быть без макросов.Pulse
Приведите пример, как должна выглядить пропись (род, падеж, с прописной или со строчной буквы) Сколько разрядов нужно обрабатывать, какова разумная достаточность (трлн, млрд, млн, тыс)?
и сколько знаков после запятой достаточно? Например, если получается число 12,345999999999 может его разумнее записать как "Двенадцать целых триста сорок шесть тысячных", ограничив тысячными или миллионными, а не триллионными
Приведите пример, как должна выглядить пропись (род, падеж, с прописной или со строчной буквы) Сколько разрядов нужно обрабатывать, какова разумная достаточность (трлн, млрд, млн, тыс)?
и сколько знаков после запятой достаточно? Например, если получается число 12,345999999999 может его разумнее записать как "Двенадцать целых триста сорок шесть тысячных", ограничив тысячными или миллионными, а не триллионнымиMCH
MCH, 12,4564-двенадцать целых четыре тысячи пятьсот шестьдесят четыре десятитысячных. Т.е. после запятой округляем до четвёртого знака. До запятой достаточно будет десятков миллионов.
MCH, 12,4564-двенадцать целых четыре тысячи пятьсот шестьдесят четыре десятитысячных. Т.е. после запятой округляем до четвёртого знака. До запятой достаточно будет десятков миллионов.Pulse
Сообщение отредактировал Pulse - Среда, 09.01.2013, 12:16
после запятой округляем до четвёртого знака. До запятой достаточно будет десятков миллионов
Вот слепил монстра на 1,5 тыс. знаков на базе другой моей формлы, используя имена (не представляю какой получится размер, если убрать имена)
Сделал с запасом: Работает до 999 млрд Округляет число до 6 знаков после запятой Делает первую букву прописной Если число целое, то результат будет "... целых ноль десятых"
Формула получилась большая и не редактируется в Ex2003, но работает в нем и свободно копируется
Протестируйте, если все нормально, то можно будет и в готовых решениях разместить
Цитата (Pulse)
после запятой округляем до четвёртого знака. До запятой достаточно будет десятков миллионов
Вот слепил монстра на 1,5 тыс. знаков на базе другой моей формлы, используя имена (не представляю какой получится размер, если убрать имена)
Сделал с запасом: Работает до 999 млрд Округляет число до 6 знаков после запятой Делает первую букву прописной Если число целое, то результат будет "... целых ноль десятых"
Формула получилась большая и не редактируется в Ex2003, но работает в нем и свободно копируется
Протестируйте, если все нормально, то можно будет и в готовых решениях разместитьMCH
Миш, а есть ли смысл лепить такие монстры? Да еще с учетом имен? Может проще с доп. табличкой?
Формула получается универсальная, одна исходная ячейка, одна конечная ячейка с формулой, в которой производится расчет не ссылаясь на другие ячейки Это позволяет спокойно копировать формулу (в разные ячейки, в разные листы, в разные книги) не задумываясь о том, что нужно еще кучу табличек за собой тащить для каждого расчета, при этом на одном листе можно сколько угодно расплодить прописей.
Даже при использовании имен проблем не возникает, т.к. в именах используется только массивы констант или расчеты с ними, без ссылок на ячейки, таким образом при копировании данной формулы в другую книгу имена также копируются (автоматически) и проблем не возникает
А вообще задачка не простая в одну формулу засунуть пропись, макросом еще нужно постаратся эту пропись сделать, не говоря уже о формулах, к тому же по размеру кода макрос получится не меньше формулы и программровать с нуля уйдет больше времени (по крайней мере у меня)
Цитата (Michael_S)
Миш, а есть ли смысл лепить такие монстры? Да еще с учетом имен? Может проще с доп. табличкой?
Формула получается универсальная, одна исходная ячейка, одна конечная ячейка с формулой, в которой производится расчет не ссылаясь на другие ячейки Это позволяет спокойно копировать формулу (в разные ячейки, в разные листы, в разные книги) не задумываясь о том, что нужно еще кучу табличек за собой тащить для каждого расчета, при этом на одном листе можно сколько угодно расплодить прописей.
Даже при использовании имен проблем не возникает, т.к. в именах используется только массивы констант или расчеты с ними, без ссылок на ячейки, таким образом при копировании данной формулы в другую книгу имена также копируются (автоматически) и проблем не возникает
А вообще задачка не простая в одну формулу засунуть пропись, макросом еще нужно постаратся эту пропись сделать, не говоря уже о формулах, к тому же по размеру кода макрос получится не меньше формулы и программровать с нуля уйдет больше времени (по крайней мере у меня)MCH
Сообщение отредактировал MCH - Среда, 09.01.2013, 19:27
Протестируйте, если все нормально, то можно будет и в готовых решениях разместить
. Всё работает, так как вы описали, представляю сколько пришлось повозиться... Но вот эти "... целых ноль десятых" портят всю малину. Можно от них как нибудь избавиться?!
Цитата (MCH)
Протестируйте, если все нормально, то можно будет и в готовых решениях разместить
. Всё работает, так как вы описали, представляю сколько пришлось повозиться... Но вот эти "... целых ноль десятых" портят всю малину. Можно от них как нибудь избавиться?!Pulse
Сообщение отредактировал Pulse - Четверг, 10.01.2013, 16:51
Ну в общем как то так Небольшой ньюанс, если после запятой нет знаков, то пропись заканчивается пробелом после слова "целых " Внешне это никак не видно, но все таки не правильно, исправлять пока некогда (уровень вложенностей для 2003 офиса не позволяет добавить еще одну ЕСЛИ или СЖПРОБЕЛЫ, придется упрощать формулу)
Ну в общем как то так Небольшой ньюанс, если после запятой нет знаков, то пропись заканчивается пробелом после слова "целых " Внешне это никак не видно, но все таки не правильно, исправлять пока некогда (уровень вложенностей для 2003 офиса не позволяет добавить еще одну ЕСЛИ или СЖПРОБЕЛЫ, придется упрощать формулу)MCH
MCH, а слово "целых" то осталось... ) Может как то так =ЕСЛИ(ЦЕЛОЕ(A3);B3-"целых";B3)?! Только B3-"целых" как написать правильно? А пробел пусть будет. )
MCH, а слово "целых" то осталось... ) Может как то так =ЕСЛИ(ЦЕЛОЕ(A3);B3-"целых";B3)?! Только B3-"целых" как написать правильно? А пробел пусть будет. )Pulse
Сообщение отредактировал Pulse - Четверг, 10.01.2013, 14:16
Так "целых" нужно убирать для целых чисел? Как тогда быдет выглядить пропись для 121 и 121,02? 121 - "Сто двадцать один"? 121,02 - "Сто двадцать одна целая две сотых"? если слово один/одна нужно по разному писать для целых и дробных чисел, то это усложнит формулу
Цитата (Pulse)
а слово "целых" то осталось... )
Так "целых" нужно убирать для целых чисел? Как тогда быдет выглядить пропись для 121 и 121,02? 121 - "Сто двадцать один"? 121,02 - "Сто двадцать одна целая две сотых"? если слово один/одна нужно по разному писать для целых и дробных чисел, то это усложнит формулуMCH
Сообщение отредактировал MCH - Четверг, 10.01.2013, 17:03
У меня возникла необходимость написания чисел на украинском, пока беру через онлайн сервис, тут: Число прописью на украинском. У кого есть код поделитесь.
У меня возникла необходимость написания чисел на украинском, пока беру через онлайн сервис, тут: Число прописью на украинском. У кого есть код поделитесь.jo0506
я бы сказал, что это реклама. причём реклама довольно неудобного сервиса. это ж додуматься надо - выбирать числа от одного до миллиона по ссылкам! клики множить, да и только с таким сервисом.
Цитата (jo0506)
онлайн сервис, тут
я бы сказал, что это реклама. причём реклама довольно неудобного сервиса. это ж додуматься надо - выбирать числа от одного до миллиона по ссылкам! клики множить, да и только с таким сервисом.ikki
помощь по Excel и VBA ikki@fxmail.ru, icq 592842413, skype alex.ikki
Здравствуйте. Надо две формулы: 1 - чтобы в ячейке было "Двадцать две "позиция"; "позиции"; "позиций" 2 - если число целое, то просто "Двадцать две "целая"; "целые"; "целых", а если хотя бы 22,01 - Двадцать две ("целая"; "целые"; "целых") десять ("тысячная"; "тысячные"; "тысячных") Поможете?
Здравствуйте. Надо две формулы: 1 - чтобы в ячейке было "Двадцать две "позиция"; "позиции"; "позиций" 2 - если число целое, то просто "Двадцать две "целая"; "целые"; "целых", а если хотя бы 22,01 - Двадцать две ("целая"; "целые"; "целых") десять ("тысячная"; "тысячные"; "тысячных") Поможете?Andr1971