Добрый день.
Я знаю, что на форуме есть очень много тем по написанию числа прописью, в том числе веса в тоннах и килограммах. Но в основном это маркосы и надстройки. Но они не всегда работают, если файл приходится открывать на разных компьютерах с разными версиями Excel. А мне нужна формула, чтобы она могла работать в разных версиях программы.
Я в свое время на форуме Планета Excel увидела замечательную формулу по написанию суммы прописью (автор Анатолий Ветринцев 10.10.2015 21:27:55), до сих пор ею пользуюсь - СПАСИБО Автору. Но у меня не получается переписать ее под написание веса прописью, чтобы и тонны и килограммы были написаны прописью плюсом с верными падежами. Может кто-то поможет исправить эту формулу, чтобы было так:
Скрытый текст |
---|
1,522 (Одна тонна пятьсот двадцать два килограмма) 3,723 (Три тонны семьсот двадцать три килограмма) 175,345 (Сто семьдесят пять тонн триста сорок пять килограмм) 1 175,345 (Одна тысяча сто семьдесят пять тонн триста сорок пять килограмм) 10 100 175,345 (Десять миллионов сто тысяч сто семьдесят пять тонн триста сорок пять килограмм) |
Изначально формула автора для суммы прописью выглядит так (как некоторые написали - убийственно выглядит, но очень просто в использовании)
Скрытый текст |
---|
=ЕСЛИ(Ссылка=0;"ноль";СЖПРОБЕЛЫ(ВЫБОР((ОСТАТ(Ссылка;1000000000)-ОСТАТ(Ссылка;100000000))/100000000+1;"";"сто";"двести";"триста";"четыреста";"пятьсот";"шестьсот";"семьсот";"восемьсот";"девятьсот") & " " & ВЫБОР(ЕСЛИ(ОСТАТ(Ссылка;100000000)<20000000;1;(ОСТАТ(Ссылка;100000000)-ОСТАТ(Ссылка;10000000))/10000000);"";"двадцать";"тридцать";"сорок";"пятьдесят";"шестьдесят";"семьдесят";"восемьдесят";"девяносто") & " " & ВЫБОР((ЕСЛИ(ОСТАТ(Ссылка;100000000)<19999999;ОСТАТ(Ссылка;100000000);ОСТАТ(Ссылка;10000000))-ОСТАТ(Ссылка;1000000))/1000000+1;"";"одна";"две";"три";"четыре";"пять";"шесть";"семь";"восемь";"девять";"десять";"одиннадцать";"двенадцать";"тринадцать";"четырнадцать";"пятнадцать";"шестнадцать";"семнадцать";"восемнадцать";"девятнадцать") & " " & ЕСЛИ(Ссылка<1000000;"";ЕСЛИ((ЕСЛИ(ОСТАТ(Ссылка;100000000)<20000000;ОСТАТ(Ссылка;100000000);ОСТАТ(Ссылка;10000000))-ОСТАТ(Ссылка;1000000))/1000000=1;"миллион";ЕСЛИ(И((ЕСЛИ(ОСТАТ(Ссылка;100000000)<20000000;ОСТАТ(Ссылка;100000000);ОСТАТ(Ссылка;10000000))-ОСТАТ(Ссылка;1000000))/1000000>1;(ЕСЛИ(ОСТАТ(Ссылка;100000000)<20000000;ОСТАТ(Ссылка;100000000);ОСТАТ(Ссылка;10000000))-ОСТАТ(Ссылка;1000000))/1000000<5);"миллиона";"миллионов"))) & " " & ВЫБОР((ОСТАТ(Ссылка;1000000)-ОСТАТ(Ссылка;100000))/100000+1;"";"сто";"двести";"триста";"четыреста";"пятьсот";"шестьсот";"семьсот";"восемьсот";"девятьсот") & " " & ВЫБОР(ЕСЛИ(ОСТАТ(Ссылка;100000)<20000;1;(ОСТАТ(Ссылка;100000)-ОСТАТ(Ссылка;10000))/10000);"";"двадцать";"тридцать";"сорок";"пятьдесят";"шестьдесят";"семьдесят";"восемьдесят";"девяносто") & " " & ВЫБОР((ЕСЛИ(ОСТАТ(Ссылка;100000)<19999;ОСТАТ(Ссылка;100000);ОСТАТ(Ссылка;10000))-ОСТАТ(Ссылка;1000))/1000+1;"";"одна";"две";"три";"четыре";"пять";"шесть";"семь";"восемь";"девять";"десять";"одиннадцать";"двенадцать";"тринадцать";"четырнадцать";"пятнадцать";"шестнадцать";"семнадцать";"восемнадцать";"девятнадцать") & " " & ЕСЛИ(Ссылка<1000;"";ЕСЛИ((ЕСЛИ(ОСТАТ(Ссылка;100000)<20000;ОСТАТ(Ссылка;100000);ОСТАТ(Ссылка;10000))-ОСТАТ(Ссылка;1000))/1000=1;"тысяча";ЕСЛИ(И((ЕСЛИ(ОСТАТ(Ссылка;100000)<20000;ОСТАТ(Ссылка;100000);ОСТАТ(Ссылка;10000))-ОСТАТ(Ссылка;1000))/1000>1;(ЕСЛИ(ОСТАТ(Ссылка;100000)<20000;ОСТАТ(Ссылка;100000);ОСТАТ(Ссылка;10000))-ОСТАТ(Ссылка;1000))/1000<5);"тысячи";"тысяч"))) & " " & ВЫБОР((ОСТАТ(Ссылка;1000)-ОСТАТ(Ссылка;100))/100+1;"";"сто";"двести";"триста";"четыреста";"пятьсот";"шестьсот";"семьсот";"восемьсот";"девятьсот") & " " & ВЫБОР(ЕСЛИ(ОСТАТ(Ссылка;100)<20;1;(ОСТАТ(Ссылка;100)-ОСТАТ(Ссылка;10))/10);"";"двадцать";"тридцать";"сорок";"пятьдесят";"шестьдесят";"семьдесят";"восемьдесят";"девяносто") & " " & ВЫБОР(ЕСЛИ(ОСТАТ(Ссылка;100)<20;ОСТАТ(Ссылка;100);ОСТАТ(Ссылка;10))+1;"";"один";"два";"три";"четыре";"пять";"шесть";"семь";"восемь";"девять";"десять";"одиннадцать";"двенадцать";"тринадцать";"четырнадцать";"пятнадцать";"шестнадцать";"семнадцать";"восемнадцать";"девятнадцать"))) & " руб. " & ОСТАТ(Ссылка*100;100) & " коп." |