Перевод цифр в пропись в excel формула

  • Число прописью в Excel – формула
  • Сумма прописью с копейками в Excel
    • В русских рублях, все буквы строчные
    • В русских рублях, первая буква заглавная
    • В русских рублях с копейками прописью
    • В белорусских рублях
  • Сумма прописью — формула для Openoffice Calc
  • Сумма прописью в Google Spreadsheets
  • UDF-функции надстройки !SEMTools
  • Процедуры !SEMTools
  • Перевод чисел прописью в другие падежи

Число или сумма прописью — в ручном исполнении — непростая задача. А если его нужно печатать десятки раз на дню и с множеством документов, точно нужна автоматизация.

Идеальным решением была бы формула в Excel.

Есть ли такая формула? Да! А главное, что вам делать ничего не придется (только скопировать), потому что я уже сделал её за вас! Но обо всем по порядку.

Сопоставление чисел, сумм и их эквивалентов прописью

Если попытаться описать алгоритм, который будет учитывать все нюансы написания числа или суммы прописью, окажется, что все на так просто, как кажется:

  • в зависимости от того, на какую цифру заканчивается число, его падеж и число могут быть:
    • единственное, именительный (двадцать один рубль)
    • единственное, родительный (двадцать два/три/четыре рубля)
    • множественное, родительный (двадцать, двадцать пять/шесть/семь/восемь/девять рублей)
  • При этом даже из этого правила уже есть исключения – числа от 11 до 14 – множественного числа, хотя числа от 1 до 4 – единственного.
  • Ноль пишется цифрами, но не пишется прописью. Кроме случая с копейками – там он пишется в прописи, но цифрами.
  • При этом от нуля может зависеть то, как будет выглядеть число или сумма прописью.
  • Копейки женского рода, а рубли – мужского. Одна копейка, но один рубль.

И это далеко не все нюансы. Есть ли варианты, которые их все учитывают?

Большинство руководств в интернете предлагают надстройки. Также предлагаются формулы на основе именованных диапазонов.

Но зачастую необходимо обмениваться файлами между разными компьютерами, и в таких случаях формулы попросту “полетят”, и данные будут повреждены, т.к. вместе с файлом нужно будет портировать и код надстроек, что никто делать обычно не будет.

В случае с именованными диапазонами – нужно будет создавать их заново (а их около десятка!).

Число прописью в Excel – примеры сопоставления

Возможна ли формула без применения VBA, макросов и надстроек?

Черт возьми, да! Я долго размышлял, прежде чем ее сделать, но мне это удалось.

Вот эта формула! Вставьте ее в любую ячейку, кроме A1, т.к. она преобразует значение этой самой ячейки:

=ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ЕСЛИ(ДЛСТР(ЦЕЛОЕ(A1))>6;РИМСКОЕ(ПСТР(ЦЕЛОЕ(A1);1;ДЛСТР(ЦЕЛОЕ(A1))-6)+0)&" миллионов "&РИМСКОЕ(ПСТР(ЦЕЛОЕ(A1);ДЛСТР(ЦЕЛОЕ(A1))-5;3)+0)&" тысяч "&РИМСКОЕ(ПСТР(ЦЕЛОЕ(A1);ДЛСТР(ЦЕЛОЕ(A1))-2;3)+0);ЕСЛИ(ДЛСТР(ЦЕЛОЕ(A1))>3;РИМСКОЕ(ПСТР(ЦЕЛОЕ(A1);1;ДЛСТР(ЦЕЛОЕ(A1))-3)+0)&" тысяч "&РИМСКОЕ(ПСТР(ЦЕЛОЕ(A1);ДЛСТР(ЦЕЛОЕ(A1))-2;3)+0);РИМСКОЕ(ЦЕЛОЕ(A1))));"DCCC";" восемьсот");"DCC";" семьсот");"DC";" шестьсот");"CD";" четыреста");"XC";" девяносто");"CCC";" триста");"CC";" двести");"D";" пятьсот");"CM";" девятьсот");"C";" сто");"XL";" сорок");"LXXX";" восемьдесят");"LXX";" семьдесят");"LX";" шестьдесят");"L";" пятьдесят");"XXX";" тридцать");"XX";" двадцать");"XIX";" девятнадцать");"XVIII";" восемнадцать");"XVII";" семнадцать");"XVI";" шестнадцать");"XV";" пятнадцать");"XIV";" четырнадцать");"XIII";" тринадцать");"XII";" двенадцать");"XI";" одиннадцать");"IX";" девять");"X";" десять");"VIII";" восемь");"VII";" семь");"VI";" шесть");"IV";" четыре");"V";" пять");"III";" три");"II";" два");"I";" один");"один тысяч";"одна тысяча");"два тысяч";"две тысячи");"три тысяч";"три тысячи");"четыре тысяч";"четыре тысячи");"один миллионов";"один миллион");"два миллионов";"два миллиона");"три миллионов";"три миллиона");"четыре миллионов";"четыре миллиона"));"миллион тысяч";"миллион");"миллиона тысяч";"миллиона");"миллионов тысяч";"миллионов")

Формула работает с любыми целыми числами от 1 до миллиарда, не включая его. Если дано число с десятичными знаками после запятой, формула берет только целую часть, иными словами, округляет всегда вниз.

Если вы хотите округлять такие числа обычным округлением по математическим правилам, замените процедурой найти и заменить во всей формуле:

на

Сумма прописью с копейками в Excel

Для записи суммы прописью с копейками по всем канонам, нужно соблюсти ряд условий:

  • Рубли пишутся словами, первая буква обычно заглавная;
  • Словоформа слова “рубль” должна соответствовать количеству;
  • Копейки пишутся цифрами, но падеж и число слова “копейка” тоже должны соответствовать числу.
Пример написания суммы прописью с копейками в Excel
Сумма прописью с копейками в Excel – пример таблицы соответствия суммы и текста

Трудно в это поверить, но и такая формула тоже существует. Аналогично, без применения VBA, макросов и надстроек.

Формула огромна, но замечательно справляется с любыми суммами до миллиарда. Работать будет в любой версии Excel от 2007 и старше – в 2003 не была доступна такая глубина вложений функций.

Вот и она, просто скопируйте ее, и она преобразует числовое значение ячейки A1 в сумму прописью с копейками.

В русских рублях, все буквы строчные

Формула выводит сумму в рублях, копейки оставляет цифрами. Если регистр первой буквы не важен, можно использовать её.

Тройной клик по формуле выделит её целиком

=ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ЕСЛИ(ДЛСТР(ОКРУГЛВНИЗ(A1;0))>6;РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);1;ДЛСТР(ОКРУГЛВНИЗ(A1;0))-6)+0)&" миллионов "&РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);ДЛСТР(ОКРУГЛВНИЗ(A1;0))-5;3)+0)&" тысяч "&РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);ДЛСТР(ОКРУГЛВНИЗ(A1;0))-2;3)+0)&" рублей";ЕСЛИ(ДЛСТР(ОКРУГЛВНИЗ(A1;0))>3;РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);1;ДЛСТР(ОКРУГЛВНИЗ(A1;0))-3)+0)&" тысяч "&РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);ДЛСТР(ОКРУГЛВНИЗ(A1;0))-2;3)+0)&" рублей";РИМСКОЕ(ОКРУГЛВНИЗ(A1;0))&" рублей"));"DCCC";" восемьсот");"DCC";" семьсот");"DC";" шестьсот");"CD";" четыреста");"XC";" девяносто");"CCC";" триста");"CC";" двести");"D";" пятьсот");"CM";" девятьсот");"C";" сто");"XL";" сорок");"LXXX";" восемьдесят");"LXX";" семьдесят");"LX";" шестьдесят");"L";" пятьдесят");"XXX";" тридцать");"XX";" двадцать");"XIX";" девятнадцать");"XVIII";" восемнадцать");"XVII";" семнадцать");"XVI";" шестнадцать");"XV";" пятнадцать");"XIV";" четырнадцать");"XIII";" тринадцать");"XII";" двенадцать");"XI";" одиннадцать");"IX";" девять");"X";" десять");"VIII";" восемь");"VII";" семь");"VI";" шесть");"IV";" четыре");"V";" пять");"III";" три");"II";" два");"I";" один");"один тысяч";"одна тысяча");"два тысяч";"две тысячи");"три тысяч";"три тысячи");"четыре тысяч";"четыре тысячи");"один миллионов";"один миллион");"два миллионов";"два миллиона");"три миллионов";"три миллиона");"четыре миллионов";"четыре миллиона");"один рублей";"один рубль");"два рублей";"два рубля");"три рублей";"три рубля");"четыре рублей";"четыре рубля"));"миллион тысяч";"миллион");"миллиона тысяч";"миллиона");"миллионов тысяч";"миллионов")&" "&ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПРАВСИМВ(ОКРУГЛ(A1*100;0);2)&" копеек";"1 копеек";"1 копейка");"2 копеек";"2 копейки");"3 копеек";"3 копейки");"4 копеек";"4 копейки");"11 копейка";"11 копеек");"12 копейки";"12 копеек");"13 копейки";"13 копеек");"14 копейки";"14 копеек")

В русских рублях, первая буква заглавная

В Excel нет простой функции, которая бы позволила сделать только первую букву ячейки заглавной, поэтому в первой конфигурации формула была в 2 раза длиннее из-за использования ЛЕВСИМВ и ДЛСТР.

Но в комментариях было предложено отличное решение – функцией ПОДСТАВИТЬ заменить пробелы на букву, которой в числах нет (например, Ф или Z), что сделает все как бы одним словом, на результате использовать функцию ПРОПНАЧ, и после заменить букву обратно на пробелы. Сейчас используется этот вариант формулы, он короче.

Тройной клик по формуле выделит её целиком.

=ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПРОПНАЧ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ЕСЛИ(ДЛСТР(ОКРУГЛВНИЗ(A1;0))>6;РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);1;ДЛСТР(ОКРУГЛВНИЗ(A1;0))-6)+0)&" миллионов "&РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);ДЛСТР(ОКРУГЛВНИЗ(A1;0))-5;3)+0)&" тысяч "&РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);ДЛСТР(ОКРУГЛВНИЗ(A1;0))-2;3)+0)&" рублей";ЕСЛИ(ДЛСТР(ОКРУГЛВНИЗ(A1;0))>3;РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);1;ДЛСТР(ОКРУГЛВНИЗ(A1;0))-3)+0)&" тысяч "&РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);ДЛСТР(ОКРУГЛВНИЗ(A1;0))-2;3)+0)&" рублей";РИМСКОЕ(ОКРУГЛВНИЗ(A1;0))&" рублей"));"DCCC";" восемьсот");"DCC";" семьсот");"DC";" шестьсот");"CD";" четыреста");"XC";" девяносто");"CCC";" триста");"CC";" двести");"D";" пятьсот");"CM";" девятьсот");"C";" сто");"XL";" сорок");"LXXX";" восемьдесят");"LXX";" семьдесят");"LX";" шестьдесят");"L";" пятьдесят");"XXX";" тридцать");"XX";" двадцать");"XIX";" девятнадцать");"XVIII";" восемнадцать");"XVII";" семнадцать");"XVI";" шестнадцать");"XV";" пятнадцать");"XIV";" четырнадцать");"XIII";" тринадцать");"XII";" двенадцать");"XI";" одиннадцать");"IX";" девять");"X";" десять");"VIII";" восемь");"VII";" семь");"VI";" шесть");"IV";" четыре");"V";" пять");"III";" три");"II";" два");"I";" один");"один тысяч";"одна тысяча");"два тысяч";"две тысячи");"три тысяч";"три тысячи");"четыре тысяч";"четыре тысячи");"один миллионов";"один миллион");"два миллионов";"два миллиона");"три миллионов";"три миллиона");"четыре миллионов";"четыре миллиона");"один рублей";"один рубль");"два рублей";"два рубля");"три рублей";"три рубля");"четыре рублей";"четыре рубля"));"миллион тысяч";"миллион");"миллиона тысяч";"миллиона");"миллионов тысяч";"миллионов")&" "&ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПРАВСИМВ(ОКРУГЛ(A1*100;0);2)&" копеек";"1 копеек";"1 копейка");"2 копеек";"2 копейки");"3 копеек";"3 копейки");"4 копеек";"4 копейки");"11 копейка";"11 копеек");"12 копейки";"12 копеек");"13 копейки";"13 копеек");"14 копейки";"14 копеек");" ";"Z"));"z";" ");"Z";" ")

В русских рублях с копейками прописью

Если нужно, чтобы копейки тоже были написаны прописью, то формула будет чуть длиннее, такой:

=СЖПРОБЕЛЫ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПРОПНАЧ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ЕСЛИ(ДЛСТР(ОКРУГЛВНИЗ(A1;0))>6;РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);1;ДЛСТР(ОКРУГЛВНИЗ(A1;0))-6)+0)&" миллионов "&РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);ДЛСТР(ОКРУГЛВНИЗ(A1;0))-5;3)+0)&" тысяч "&РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);ДЛСТР(ОКРУГЛВНИЗ(A1;0))-2;3)+0)&" рублей";ЕСЛИ(ДЛСТР(ОКРУГЛВНИЗ(A1;0))>3;РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);1;ДЛСТР(ОКРУГЛВНИЗ(A1;0))-3)+0)&" тысяч "&РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);ДЛСТР(ОКРУГЛВНИЗ(A1;0))-2;3)+0)&" рублей";РИМСКОЕ(ОКРУГЛВНИЗ(A1;0))&" рублей"));"DCCC";" восемьсот");"DCC";" семьсот");"DC";" шестьсот");"CD";" четыреста");"XC";" девяносто");"CCC";" триста");"CC";" двести");"D";" пятьсот");"CM";" девятьсот");"C";" сто");"XL";" сорок");"LXXX";" восемьдесят");"LXX";" семьдесят");"LX";" шестьдесят");"L";" пятьдесят");"XXX";" тридцать");"XX";" двадцать");"XIX";" девятнадцать");"XVIII";" восемнадцать");"XVII";" семнадцать");"XVI";" шестнадцать");"XV";" пятнадцать");"XIV";" четырнадцать");"XIII";" тринадцать");"XII";" двенадцать");"XI";" одиннадцать");"IX";" девять");"X";" десять");"VIII";" восемь");"VII";" семь");"VI";" шесть");"IV";" четыре");"V";" пять");"III";" три");"II";" два");"I";" один");"один тысяч";"одна тысяча");"два тысяч";"две тысячи");"три тысяч";"три тысячи");"четыре тысяч";"четыре тысячи");"один миллионов";"один миллион");"два миллионов";"два миллиона");"три миллионов";"три миллиона");"четыре миллионов";"четыре миллиона");"один рублей";"один рубль");"два рублей";"два рубля");"три рублей";"три рубля");"четыре рублей";"четыре рубля"));"миллион тысяч";"миллион");"миллиона тысяч";"миллиона");"миллионов тысяч";"миллионов")&" "&ПОДСТАВИТЬ(" "&ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ЕСЛИ(ЛЕВСИМВ(ПРАВСИМВ(ОКРУГЛ(A1*100;0);2))="1";ИНДЕКС({"десять";"одиннадцать";"двенадцать";"тринадцать";"четырнадцать";"пятнадцать";"шестнадцать";"семнадцать";"восемнадцать";"девятнадцать"};ПРАВСИМВ(ОКРУГЛ(A1*100;0);2)-9);ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ЛЕВСИМВ(ПРАВСИМВ(ОКРУГЛ(A1*100;0);2));"2";"двадцать");"3";"тридцать");"4";"сорок");"5";"пятьдесят");"6";"шестьдесят");"7";"семьдесят");"8";"восемьдесят");"9";"девяносто");"0";"")&" "&ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПРАВСИМВ(ПРАВСИМВ(ОКРУГЛ(A1*100;0);2));"1";"одна");"2";"две");"3";"три");"4";"четыре");"5";"пять");"6";"шесть");"7";"семь");"8";"восемь");"9";"девять");"0";""))&" копеек";"одна копеек";"одна копейка");"две копеек";"две копейки");"три копеек";"три копейки");"четыре копеек";"четыре копейки");"  копеек";"");" ";"Z"));"z";" ");"Z";" "))

В белорусских рублях

Тройной клик по формуле выделит ее целиком.

=ПРОПИСН(ЛЕВСИМВ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ЕСЛИ(ДЛСТР(ОКРУГЛВНИЗ(A1;0))>6;РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);1;ДЛСТР(ОКРУГЛВНИЗ(A1;0))-6)+0)&" миллионов "&РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);ДЛСТР(ОКРУГЛВНИЗ(A1;0))-5;3)+0)&" тысяч "&РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);ДЛСТР(ОКРУГЛВНИЗ(A1;0))-2;3)+0)&" белорусских рублей";ЕСЛИ(ДЛСТР(ОКРУГЛВНИЗ(A1;0))>3;РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);1;ДЛСТР(ОКРУГЛВНИЗ(A1;0))-3)+0)&" тысяч "&РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);ДЛСТР(ОКРУГЛВНИЗ(A1;0))-2;3)+0)&" белорусских рублей";РИМСКОЕ(ОКРУГЛВНИЗ(A1;0))&" белорусских рублей"));"DCCC";" восемьсот");"DCC";" семьсот");"DC";" шестьсот");"CD";" четыреста");"XC";" девяносто");"CCC";" триста");"CC";" двести");"D";" пятьсот");"CM";" девятьсот");"C";" сто");"XL";" сорок");"LXXX";" восемьдесят");"LXX";" семьдесят");"LX";" шестьдесят");"L";" пятьдесят");"XXX";" тридцать");"XX";" двадцать");"XIX";" девятнадцать");"XVIII";" восемнадцать");"XVII";" семнадцать");"XVI";" шестнадцать");"XV";" пятнадцать");"XIV";" четырнадцать");"XIII";" тринадцать");"XII";" двенадцать");"XI";" одиннадцать");"IX";" девять");"X";" десять");"VIII";" восемь");"VII";" семь");"VI";" шесть");"IV";" четыре");"V";" пять");"III";" три");"II";" два");"I";" один");"один тысяч";"одна тысяча");"два тысяч";"две тысячи");"три тысяч";"три тысячи");"четыре тысяч";"четыре тысячи");"один миллионов";"один миллион");"два миллионов";"два миллиона");"три миллионов";"три миллиона");"четыре миллионов";"четыре миллиона");"один белорусских рублей";"один белорусский рубль");"два белорусских рублей";"два белорусских рубля");"три белорусских рублей";"три белорусских рубля");"четыре белорусских рублей";"четыре белорусских рубля"));"миллион тысяч";"миллион");"миллиона тысяч";"миллиона");"миллионов тысяч";"миллионов");1))&ПСТР(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ЕСЛИ(ДЛСТР(ОКРУГЛВНИЗ(A1;0))>6;РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);1;ДЛСТР(ОКРУГЛВНИЗ(A1;0))-6)+0)&" миллионов "&РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);ДЛСТР(ОКРУГЛВНИЗ(A1;0))-5;3)+0)&" тысяч "&РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);ДЛСТР(ОКРУГЛВНИЗ(A1;0))-2;3)+0)&" белорусских рублей";ЕСЛИ(ДЛСТР(ОКРУГЛВНИЗ(A1;0))>3;РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);1;ДЛСТР(ОКРУГЛВНИЗ(A1;0))-3)+0)&" тысяч "&РИМСКОЕ(ПСТР(ОКРУГЛВНИЗ(A1;0);ДЛСТР(ОКРУГЛВНИЗ(A1;0))-2;3)+0)&" белорусских рублей";РИМСКОЕ(ОКРУГЛВНИЗ(A1;0))&" белорусских рублей"));"DCCC";" восемьсот");"DCC";" семьсот");"DC";" шестьсот");"CD";" четыреста");"XC";" девяносто");"CCC";" триста");"CC";" двести");"D";" пятьсот");"CM";" девятьсот");"C";" сто");"XL";" сорок");"LXXX";" восемьдесят");"LXX";" семьдесят");"LX";" шестьдесят");"L";" пятьдесят");"XXX";" тридцать");"XX";" двадцать");"XIX";" девятнадцать");"XVIII";" восемнадцать");"XVII";" семнадцать");"XVI";" шестнадцать");"XV";" пятнадцать");"XIV";" четырнадцать");"XIII";" тринадцать");"XII";" двенадцать");"XI";" одиннадцать");"IX";" девять");"X";" десять");"VIII";" восемь");"VII";" семь");"VI";" шесть");"IV";" четыре");"V";" пять");"III";" три");"II";" два");"I";" один");"один тысяч";"одна тысяча");"два тысяч";"две тысячи");"три тысяч";"три тысячи");"четыре тысяч";"четыре тысячи");"один миллионов";"один миллион");"два миллионов";"два миллиона");"три миллионов";"три миллиона");"четыре миллионов";"четыре миллиона");"один белорусских рублей";"один белорусский рубль");"два белорусских рублей";"два белорусских рубля");"три белорусских рублей";"три белорусских рубля");"четыре белорусских рублей";"четыре белорусских рубля"));"миллион тысяч";"миллион");"миллиона тысяч";"миллиона");"миллионов тысяч";"миллионов");2;200)&" "&ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПРАВСИМВ(ОКРУГЛ(A1*100;0);2)&" копеек";"1 копеек";"1 копейка");"2 копеек";"2 копейки");"3 копеек";"3 копейки");"4 копеек";"4 копейки");"11 копейка";"11 копеек");"12 копейки";"12 копеек");"13 копейки";"13 копеек");"14 копейки";"14 копеек")

Если вам не нужно делать первую букву заглавной, просто “оберните” всю эту гигантскую формулу функцией СТРОЧН.

Сумма прописью — формула для Openoffice Calc

У формулы выше были проблемы с импортом в Openoffice, т.к. тот в отличие от Excel (2007 и старше), поддерживает максимум 42 уровня вложенности в формулах, а не 64.

Поэтому пришлось полностью переделать логику формулы и сделать ее сложной формулой массивов.

Так она выглядит в Excel:

=ПРОПИСН(ЛЕВСИМВ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ЕСЛИ(ПСТР(ТЕКСТ(A1;"000000000");1;3)+0>0;ЕСЛИ(ПСТР(ТЕКСТ(A1;"000000000");2;1)="1";ПОДСТАВИТЬ(ИНДЕКС({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};ПСТР(ТЕКСТ(A1;"000000000");1;1)+1)&ИНДЕКС({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};ПСТР(ТЕКСТ(A1;"000000000");2;1)+1)&ИНДЕКС({"mов";"один m";"два mа";"три mа";"cе mа";"пять mов";"шесть mов";"семь mов";"vь mов";"девять mов"};ПСТР(ТЕКСТ(A1;"000000000");3;1)+1);ИНДЕКС({"dь один m":"dь два mа":"dь три mа":"dь cе mа":"dь пять":"dь шесть":"dь семь":"dь vь":"dь девять"};ПСТР(ТЕКСТ(A1;"000000000");3;1));ИНДЕКС({"одиннаe mов":"двенаe mов":"тринаe mов":"cнаe mов":"пятнаe":"шестнаe":"семнаe":"vнаe":"девятнаe"};ПСТР(ТЕКСТ(A1;"000000000");3;1)));ИНДЕКС({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};ПСТР(ТЕКСТ(A1;"000000000");1;1)+1)&ИНДЕКС({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};ПСТР(ТЕКСТ(A1;"000000000");2;1)+1)&ИНДЕКС({"mов";"один m";"два mа";"три mа";"cе mа";"пять mов";"шесть mов";"семь mов";"vь mов";"девять mов"};ПСТР(ТЕКСТ(A1;"000000000");3;1)+1));"")&" "&ЕСЛИ(ПСТР(ТЕКСТ(A1;"000000000");4;3)+0>0;ЕСЛИ(ПСТР(ТЕКСТ(A1;"000000000");5;1)="1";ПОДСТАВИТЬ(ИНДЕКС({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};ПСТР(ТЕКСТ(A1;"000000000");4;1)+1)&ИНДЕКС({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};ПСТР(ТЕКСТ(A1;"000000000");5;1)+1)&ИНДЕКС({"тысяч";"одна тысяча";"две тысячи";"три тысячи";"cе тысячи";"пять тысяч";"шесть тысяч";"семь тысяч";"vь тысяч";"девять тысяч"};ПСТР(ТЕКСТ(A1;"000000000");6;1)+1);ИНДЕКС({"dь одна тысяча":"dь две тысячи":"dь три тысячи":"dь cе тысячи":"dь пять":"dь шесть":"dь семь":"dь vь":"dь девять"};ПСТР(ТЕКСТ(A1;"000000000");6;1));ИНДЕКС({"одиннаe тысяч":"двенаe тысяч":"тринаe тысяч":"cнаe тысяч":"пятнаe":"шестнаe":"семнаe":"vнаe":"девятнаe"};ПСТР(ТЕКСТ(A1;"000000000");6;1)));ИНДЕКС({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};ПСТР(ТЕКСТ(A1;"000000000");4;1)+1)&ИНДЕКС({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};ПСТР(ТЕКСТ(A1;"000000000");5;1)+1)&ИНДЕКС({"тысяч";"одна тысяча";"две тысячи";"три тысячи";"cе тысячи";"пять тысяч";"шесть тысяч";"семь тысяч";"vь тысяч";"девять тысяч"};ПСТР(ТЕКСТ(A1;"000000000");6;1)+1));"")&" "&ЕСЛИ(ПСТР(ТЕКСТ(A1;"000000000");8;1)="1";ПОДСТАВИТЬ(ИНДЕКС({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};ПСТР(ТЕКСТ(A1;"000000000");7;1)+1)&ИНДЕКС({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};ПСТР(ТЕКСТ(A1;"000000000");8;1)+1)&ИНДЕКС({"rей";"один rь";"два rя";"три rя";"cе rя";"пять rей";"шесть rей";"семь rей";"vь rей";"девять rей"};ПСТР(ТЕКСТ(A1;"000000000");9;1)+1);ИНДЕКС({"dь один rь":"dь два rя":"dь три rя":"dь cе rя":"dь пять":"dь шесть":"dь семь":"dь vь":"dь девять"};ПРАВСИМВ(A1));ИНДЕКС({"одиннаe rей":"двенаe rей":"тринаe rей":"cнаe rей":"пятнаe":"шестнаe":"семнаe":"vнаe":"девятнаe"};ПРАВСИМВ(A1)));ИНДЕКС({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};ПСТР(ТЕКСТ(A1;"000000000");7;1)+1)&ИНДЕКС({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};ПСТР(ТЕКСТ(A1;"000000000");8;1)+1)&ИНДЕКС({"rей";"один rь";"два rя";"три rя";"cе rя";"пять rей";"шесть rей";"семь rей";"vь rей";"девять rей"};ПСТР(ТЕКСТ(A1;"000000000");9;1)+1));"m";"миллион");"d";"десят");"r";"рубл");"e";"дцать");"v";"восем");"c";"четыр")))&ПСТР(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ЕСЛИ(ПСТР(ТЕКСТ(A1;"000000000");1;3)+0>0;ЕСЛИ(ПСТР(ТЕКСТ(A1;"000000000");2;1)="1";ПОДСТАВИТЬ(ИНДЕКС({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};ПСТР(ТЕКСТ(A1;"000000000");1;1)+1)&ИНДЕКС({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};ПСТР(ТЕКСТ(A1;"000000000");2;1)+1)&ИНДЕКС({"mов";"один m";"два mа";"три mа";"cе mа";"пять mов";"шесть mов";"семь mов";"vь mов";"девять mов"};ПСТР(ТЕКСТ(A1;"000000000");3;1)+1);ИНДЕКС({"dь один m":"dь два mа":"dь три mа":"dь cе mа":"dь пять":"dь шесть":"dь семь":"dь vь":"dь девять"};ПСТР(ТЕКСТ(A1;"000000000");3;1));ИНДЕКС({"одиннаe mов":"двенаe mов":"тринаe mов":"cнаe mов":"пятнаe":"шестнаe":"семнаe":"vнаe":"девятнаe"};ПСТР(ТЕКСТ(A1;"000000000");3;1)));ИНДЕКС({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};ПСТР(ТЕКСТ(A1;"000000000");1;1)+1)&ИНДЕКС({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};ПСТР(ТЕКСТ(A1;"000000000");2;1)+1)&ИНДЕКС({"mов";"один m";"два mа";"три mа";"cе mа";"пять mов";"шесть mов";"семь mов";"vь mов";"девять mов"};ПСТР(ТЕКСТ(A1;"000000000");3;1)+1));"")&" "&ЕСЛИ(ПСТР(ТЕКСТ(A1;"000000000");4;3)+0>0;ЕСЛИ(ПСТР(ТЕКСТ(A1;"000000000");5;1)="1";ПОДСТАВИТЬ(ИНДЕКС({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};ПСТР(ТЕКСТ(A1;"000000000");4;1)+1)&ИНДЕКС({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};ПСТР(ТЕКСТ(A1;"000000000");5;1)+1)&ИНДЕКС({"тысяч";"одна тысяча";"две тысячи";"три тысячи";"cе тысячи";"пять тысяч";"шесть тысяч";"семь тысяч";"vь тысяч";"девять тысяч"};ПСТР(ТЕКСТ(A1;"000000000");6;1)+1);ИНДЕКС({"dь одна тысяча":"dь две тысячи":"dь три тысячи":"dь cе тысячи":"dь пять":"dь шесть":"dь семь":"dь vь":"dь девять"};ПСТР(ТЕКСТ(A1;"000000000");6;1));ИНДЕКС({"одиннаe тысяч":"двенаe тысяч":"тринаe тысяч":"cнаe тысяч":"пятнаe":"шестнаe":"семнаe":"vнаe":"девятнаe"};ПСТР(ТЕКСТ(A1;"000000000");6;1)));ИНДЕКС({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};ПСТР(ТЕКСТ(A1;"000000000");4;1)+1)&ИНДЕКС({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};ПСТР(ТЕКСТ(A1;"000000000");5;1)+1)&ИНДЕКС({"тысяч";"одна тысяча";"две тысячи";"три тысячи";"cе тысячи";"пять тысяч";"шесть тысяч";"семь тысяч";"vь тысяч";"девять тысяч"};ПСТР(ТЕКСТ(A1;"000000000");6;1)+1));"")&" "&ЕСЛИ(ПСТР(ТЕКСТ(A1;"000000000");8;1)="1";ПОДСТАВИТЬ(ИНДЕКС({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};ПСТР(ТЕКСТ(A1;"000000000");7;1)+1)&ИНДЕКС({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};ПСТР(ТЕКСТ(A1;"000000000");8;1)+1)&ИНДЕКС({"rей";"один rь";"два rя";"три rя";"cе rя";"пять rей";"шесть rей";"семь rей";"vь rей";"девять rей"};ПСТР(ТЕКСТ(A1;"000000000");9;1)+1);ИНДЕКС({"dь один rь":"dь два rя":"dь три rя":"dь cе rя":"dь пять":"dь шесть":"dь семь":"dь vь":"dь девять"};ПРАВСИМВ(A1));ИНДЕКС({"одиннаe rей":"двенаe rей":"тринаe rей":"cнаe rей":"пятнаe":"шестнаe":"семнаe":"vнаe":"девятнаe"};ПРАВСИМВ(A1)));ИНДЕКС({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};ПСТР(ТЕКСТ(A1;"000000000");7;1)+1)&ИНДЕКС({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};ПСТР(ТЕКСТ(A1;"000000000");8;1)+1)&ИНДЕКС({"rей";"один rь";"два rя";"три rя";"cе rя";"пять rей";"шесть rей";"семь rей";"vь rей";"девять rей"};ПСТР(ТЕКСТ(A1;"000000000");9;1)+1));"m";"миллион");"d";"десят");"r";"рубл");"e";"дцать");"v";"восем");"c";"четыр");2;200)&" "&ЕСЛИ(ЛЕВСИМВ(ПРАВСИМВ(ОКРУГЛ(A1*100;0);2))="1";ПРАВСИМВ(ОКРУГЛ(A1*100;0);2) &" копеек";ПРАВСИМВ(ОКРУГЛ(A1*100;0);2)&ИНДЕКС({" копеек";" копейка";" копейки";" копейки";" копейки";" копеек";" копеек";" копеек";" копеек";" копеек"};ПРАВСИМВ(ОКРУГЛ(A1*100;0))+1))

А так – после импорта в Openoffice Calc:

=UPPER(LEFT(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(IF(MID(TEXT(A1;"000000000");1;3)+0>0;IF(MID(TEXT(A1;"000000000");2;1)="1";SUBSTITUTE(INDEX({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};MID(TEXT(A1;"000000000");1;1)+1)&INDEX({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};MID(TEXT(A1;"000000000");2;1)+1)&INDEX({"mов";"один m";"два mа";"три mа";"cе mа";"пять mов";"шесть mов";"семь mов";"vь mов";"девять mов"};MID(TEXT(A1;"000000000");3;1)+1);INDEX({"dь один m"|"dь два mа"|"dь три mа"|"dь cе mа"|"dь пять"|"dь шесть"|"dь семь"|"dь vь"|"dь девять"};MID(TEXT(A1;"000000000");3;1));INDEX({"одиннаe mов"|"двенаe mов"|"тринаe mов"|"cнаe mов"|"пятнаe"|"шестнаe"|"семнаe"|"vнаe"|"девятнаe"};MID(TEXT(A1;"000000000");3;1)));INDEX({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};MID(TEXT(A1;"000000000");1;1)+1)&INDEX({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};MID(TEXT(A1;"000000000");2;1)+1)&INDEX({"mов";"один m";"два mа";"три mа";"cе mа";"пять mов";"шесть mов";"семь mов";"vь mов";"девять mов"};MID(TEXT(A1;"000000000");3;1)+1));"")&" "&IF(MID(TEXT(A1;"000000000");4;3)+0>0;IF(MID(TEXT(A1;"000000000");5;1)="1";SUBSTITUTE(INDEX({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};MID(TEXT(A1;"000000000");4;1)+1)&INDEX({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};MID(TEXT(A1;"000000000");5;1)+1)&INDEX({"тысяч";"одна тысяча";"две тысячи";"три тысячи";"cе тысячи";"пять тысяч";"шесть тысяч";"семь тысяч";"vь тысяч";"девять тысяч"};MID(TEXT(A1;"000000000");6;1)+1);INDEX({"dь одна тысяча"|"dь две тысячи"|"dь три тысячи"|"dь cе тысячи"|"dь пять"|"dь шесть"|"dь семь"|"dь vь"|"dь девять"};MID(TEXT(A1;"000000000");6;1));INDEX({"одиннаe тысяч"|"двенаe тысяч"|"тринаe тысяч"|"cнаe тысяч"|"пятнаe"|"шестнаe"|"семнаe"|"vнаe"|"девятнаe"};MID(TEXT(A1;"000000000");6;1)));INDEX({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};MID(TEXT(A1;"000000000");4;1)+1)&INDEX({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};MID(TEXT(A1;"000000000");5;1)+1)&INDEX({"тысяч";"одна тысяча";"две тысячи";"три тысячи";"cе тысячи";"пять тысяч";"шесть тысяч";"семь тысяч";"vь тысяч";"девять тысяч"};MID(TEXT(A1;"000000000");6;1)+1));"")&" "&IF(MID(TEXT(A1;"000000000");8;1)="1";SUBSTITUTE(INDEX({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};MID(TEXT(A1;"000000000");7;1)+1)&INDEX({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};MID(TEXT(A1;"000000000");8;1)+1)&INDEX({"rей";"один rь";"два rя";"три rя";"cе rя";"пять rей";"шесть rей";"семь rей";"vь rей";"девять rей"};MID(TEXT(A1;"000000000");9;1)+1);INDEX({"dь один rь"|"dь два rя"|"dь три rя"|"dь cе rя"|"dь пять"|"dь шесть"|"dь семь"|"dь vь"|"dь девять"};RIGHT(A1));INDEX({"одиннаe rей"|"двенаe rей"|"тринаe rей"|"cнаe rей"|"пятнаe"|"шестнаe"|"семнаe"|"vнаe"|"девятнаe"};RIGHT(A1)));INDEX({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};MID(TEXT(A1;"000000000");7;1)+1)&INDEX({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};MID(TEXT(A1;"000000000");8;1)+1)&INDEX({"rей";"один rь";"два rя";"три rя";"cе rя";"пять rей";"шесть rей";"семь rей";"vь rей";"девять rей"};MID(TEXT(A1;"000000000");9;1)+1))&" "&IF(LEFT(RIGHT(ROUND(A1*100;0);2))="1";RIGHT(ROUND(A1*100;0);2) &" копеек";RIGHT(ROUND(A1*100;0);2)&INDEX({" копеек";" копейка";" копейки";" копейки";" копейки";" копеек";" копеек";" копеек";" копеек";" копеек"};RIGHT(ROUND(A1*100;0))+1));"m";"миллион");"d";"десят");"r";"рубл");"e";"дцать");"v";"восем");"c";"четыр")))&MID(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(IF(MID(TEXT(A1;"000000000");1;3)+0>0;IF(MID(TEXT(A1;"000000000");2;1)="1";SUBSTITUTE(INDEX({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};MID(TEXT(A1;"000000000");1;1)+1)&INDEX({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};MID(TEXT(A1;"000000000");2;1)+1)&INDEX({"mов";"один m";"два mа";"три mа";"cе mа";"пять mов";"шесть mов";"семь mов";"vь mов";"девять mов"};MID(TEXT(A1;"000000000");3;1)+1);INDEX({"dь один m"|"dь два mа"|"dь три mа"|"dь cе mа"|"dь пять"|"dь шесть"|"dь семь"|"dь vь"|"dь девять"};MID(TEXT(A1;"000000000");3;1));INDEX({"одиннаe mов"|"двенаe mов"|"тринаe mов"|"cнаe mов"|"пятнаe"|"шестнаe"|"семнаe"|"vнаe"|"девятнаe"};MID(TEXT(A1;"000000000");3;1)));INDEX({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};MID(TEXT(A1;"000000000");1;1)+1)&INDEX({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};MID(TEXT(A1;"000000000");2;1)+1)&INDEX({"mов";"один m";"два mа";"три mа";"cе mа";"пять mов";"шесть mов";"семь mов";"vь mов";"девять mов"};MID(TEXT(A1;"000000000");3;1)+1));"")&" "&IF(MID(TEXT(A1;"000000000");4;3)+0>0;IF(MID(TEXT(A1;"000000000");5;1)="1";SUBSTITUTE(INDEX({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};MID(TEXT(A1;"000000000");4;1)+1)&INDEX({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};MID(TEXT(A1;"000000000");5;1)+1)&INDEX({"тысяч";"одна тысяча";"две тысячи";"три тысячи";"cе тысячи";"пять тысяч";"шесть тысяч";"семь тысяч";"vь тысяч";"девять тысяч"};MID(TEXT(A1;"000000000");6;1)+1);INDEX({"dь одна тысяча"|"dь две тысячи"|"dь три тысячи"|"dь cе тысячи"|"dь пять"|"dь шесть"|"dь семь"|"dь vь"|"dь девять"};MID(TEXT(A1;"000000000");6;1));INDEX({"одиннаe тысяч"|"двенаe тысяч"|"тринаe тысяч"|"cнаe тысяч"|"пятнаe"|"шестнаe"|"семнаe"|"vнаe"|"девятнаe"};MID(TEXT(A1;"000000000");6;1)));INDEX({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};MID(TEXT(A1;"000000000");4;1)+1)&INDEX({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};MID(TEXT(A1;"000000000");5;1)+1)&INDEX({"тысяч";"одна тысяча";"две тысячи";"три тысячи";"cе тысячи";"пять тысяч";"шесть тысяч";"семь тысяч";"vь тысяч";"девять тысяч"};MID(TEXT(A1;"000000000");6;1)+1));"")&" "&IF(MID(TEXT(A1;"000000000");8;1)="1";SUBSTITUTE(INDEX({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};MID(TEXT(A1;"000000000");7;1)+1)&INDEX({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};MID(TEXT(A1;"000000000");8;1)+1)&INDEX({"rей";"один rь";"два rя";"три rя";"cе rя";"пять rей";"шесть rей";"семь rей";"vь rей";"девять rей"};MID(TEXT(A1;"000000000");9;1)+1);INDEX({"dь один rь"|"dь два rя"|"dь три rя"|"dь cе rя"|"dь пять"|"dь шесть"|"dь семь"|"dь vь"|"dь девять"};RIGHT(A1));INDEX({"одиннаe rей"|"двенаe rей"|"тринаe rей"|"cнаe rей"|"пятнаe"|"шестнаe"|"семнаe"|"vнаe"|"девятнаe"};RIGHT(A1)));INDEX({"";"сто ";"двести ";"триста ";"cеста ";"пятьсот ";"шестьсот ";"семьсот ";"vьсот ";"девятьсот "};MID(TEXT(A1;"000000000");7;1)+1)&INDEX({"";"dь ";"дваe ";"триe ";"сорок ";"пятьd ";"шестьd ";"семьd ";"vьd ";"девяносто "};MID(TEXT(A1;"000000000");8;1)+1)&INDEX({"rей";"один rь";"два rя";"три rя";"cе rя";"пять rей";"шесть rей";"семь rей";"vь rей";"девять rей"};MID(TEXT(A1;"000000000");9;1)+1))&" "&IF(LEFT(RIGHT(ROUND(A1*100;0);2))="1";RIGHT(ROUND(A1*100;0);2) &" копеек";RIGHT(ROUND(A1*100;0);2)&INDEX({" копеек";" копейка";" копейки";" копейки";" копейки";" копеек";" копеек";" копеек";" копеек";" копеек"};RIGHT(ROUND(A1*100;0))+1));"m";"миллион");"d";"десят");"r";"рубл");"e";"дцать");"v";"восем");"c";"четыр");2;200)

Сумма прописью в Google Spreadsheets

Прелесть формул выше в том, что они с минимальными модификациями портируются в Google Таблицы, где их замечательно можно использовать.

Ниже пример таблицы с суммой прописью:

Посмотреть сам файл и скопировать к себе можно по ссылке:

https://docs.google.com/spreadsheets/d/1dmqEB3TehEGmWfaxRmIQ9LXjGal439_YgKxZhbK0Ods/edit?usp=sharing

UDF-функции надстройки !SEMTools

Для тех, у кого ОС Windows и Excel 2010 и выше, и кто не готов пользоваться указанными формулами, есть простое решение – установить надстройку, в которой присутствует код, скрывающий все эти вычисления “под капот”. Одна из таких – разработанная мной надстройка !SEMTools.

В ней для решения задачи преобразования числа и суммы в их прописной вариант есть 2 лаконичные функции:

Они доступны абсолютно бесплатно безо всяких ограничений в любой версии надстройки, приобретать полную версию не обязательно.

Единственное ограничение – эти формулы будут работать только на тех компьютерах, где установлена надстройка.

Процедуры !SEMTools

Еще более простое, но не всегда удобное решение – процедуры (макросы). В надстройке для Excel !SEMTools доступны макросы преобразования чисел в сумму и число прописью в 1 клик.

Вызов процедур находится в меню “Изменить символы” в группе “ИЗМЕНИТЬ” на панели надстройки. Макрос преобразует числа на месте, превращая их в текст. Можно выделить как одну, так и несколько ячеек:

демонстрация работы процедур число прописью и сумма прописью в !SEMTools
Число и сумма прописью – процедуры в !SEMTools

Функционал доступен в полной версии надстройки.

Перевод чисел прописью в другие падежи

Зачастую после получения числа или суммы прописью нужно указать его в другом падеже.

Например, “сумма в размере пятисот тысяч трехсот трех рублей”. !SEMTools справляется и с этой задачей – смотрите раздел склонение по падежам в Excel.

Надстройка !SEMTools для Excel поможет буквально за пару кликов написать числа или суммы прописью.
Скачайте и убедитесь в этом сами!

Сумм прописью в Microsoft Excel

При заполнении различных финансовых документов часто требуется прописать сумму не только числом, но и прописью. Конечно, это занимает гораздо больше времени, чем обычное написание с помощью цифр. Если подобным образом нужно заполнить не одно, а много документов, то временные потери становятся огромными. Кроме того, именно в записи суммы прописью наиболее часто встречаются грамматические ошибки. Давайте выясним, как сделать так, чтобы числа прописью вносились автоматически.

Использование надстройки

В Эксель нет встроенного инструмента, который бы помогал автоматически переводить цифры в слова. Поэтому для решения поставленной задачи используют специальные надстройки.

Одной из самых удобных является надстройка NUM2TEXT. Она позволяет поменять цифры на буквы через Мастер функций.

  1. Открываем программу Excel и переходим во вкладку «Файл».
  2. Переход в раздел Файл в Microsoft Excel

  3. Перемещаемся в раздел «Параметры».
  4. Переход в раздел Параметры в Microsoft Excel

  5. В активном окне параметров переходим в раздел «Надстройки».
  6. Переход в надстройки в Microsoft Excel

  7. Далее, в параметре настроек «Управление» устанавливаем значение «Надстройки Excel». Жмем на кнопку «Перейти…».
  8. Перемещение в надстройки в программе Microsoft Excel

  9. Открывается небольшое окно надстроек Excel. Жмем на кнопку «Обзор…».
  10. Переход к поиску надстройки в Microsoft Excel

  11. В открывшемся окне ищем предварительно скачанный и сохраненный на жесткий диск компьютера файл надстройки NUM2TEXT.xla. Выделяем его и жмем на кнопку «OK».
  12. Выбор надстройки в Microsoft Excel

  13. Мы видим, что данный элемент появился среди доступных надстроек. Ставим галочку около пункта NUM2TEXT и жмем на кнопку «OK».
  14. Активация надстройки в Microsoft Excel

  15. Для того, чтобы проверить как работает только что установленная надстройка пишем в любой свободной ячейке листа произвольное число. Выделяем любую другую ячейку. Кликаем по значку «Вставить функцию». Он расположен слева от строки формул.
  16. Запуск мастера функций в Microsoft Excel

  17. Запускается Мастер функций. В полном алфавитном перечне функций ищем запись «Сумма_прописью». Её раньше не было, но она появилась тут после установки надстройки. Выделяем эту функцию. Жмем на кнопку «OK».
  18. Вызов функции Сумма прописью в Microsoft Excel

  19. Отрывается окно аргументов функции Сумма_прописью. Оно содержит только одно поле «Сумма». Сюда можно записать обычное число. Оно в выделенной ячейке отобразиться в формате записанной прописью денежной суммы в рублях и копейках.
  20. Числовой аргумент функции сумма_прописью в Microsoft Excel

    Можно в поле занести адрес любой ячейки. Это делается либо путем ручной записи координат этой ячейки, либо простым кликом по ней в то время, когда курсор находится в поле параметра «Сумма». Жмем на кнопку «OK».

    Lumpics.ru

    Аргумент функции сумма_прописью в Microsoft Excel

  21. После этого, любое число, которое записано в ячейку, указанную вами, будет отображаться в денежном виде прописью в том месте, где установлена формула функции.

Результат функции сумма_прописью в Microsoft Excel

Функцию можно также записать и вручную без вызова мастера функций. Она имеет синтаксис Сумма_прописью(сумма) или Сумма_прописью(координаты_ячейки). Таким образом, если вы в ячейке запишите формулу =Сумма_прописью(5) , то после нажатия кнопки ENTER в этой ячейке отобразиться надпись «Пять рублей 00 копеек».

Результат функции записанной вручную в Microsoft Excel

Если вы введете в ячейку формулу =Сумма_прописью(A2) , то в таком случае, любое число, внесенное в ячейку A2 будет отображаться тут денежной суммой прописью.

Результат функции записанной вручную с координатами ячеек в Microsoft Excel

Как видим, несмотря на то, что в Excel нет встроенного инструмента для преобразования чисел в сумму прописью, эту возможность можно довольно легко получить, просто установив необходимую надстройку в программу.

Еще статьи по данной теме:

Помогла ли Вам статья?

Во многих документах мы можем видеть строку, в которой требуется указать сумму не в числовом виде, а прописью. Это защищает отчетность от подделки, ведь цифру легко переправить. А вот длинную запись незаметно исправить не так-то просто. Сумма прописью в Excel доступна только в виде надстроек или с использованием формул. Встроенного инструмента не имеется.

Как в Excel сделать сумму прописью

Скачать файл надстройки

Чтобы получить эту возможность, вы можете скачать надстройку «Сумма прописью» в Excel бесплатно на нашем сайте.

Разместите его в любом удобном каталоге и подключите. Для этого следует пройти следующие этапы:

Эта функция «сумма_прописью» работает в Excel 2007, 2010, 2016

Данная надстройка работает только для рублей. Если вам нужна другая валюта, скачайте еще файл sumprop.xla. Действуя по аналогии подключите надстройку для получения суммы прописью в Excel.

Для проверки введем в ячейке A3 произвольное число. Пусть это будет десятичная дробь. Также вызовем окно вставки функций и найдем новые функции для вывода суммы прописью.

Как видите, нам стали доступны:

  • Сумма Прописью
  • Сумма Прописью Доллары
  • Сумма Прописью Евро
  • Сумма Прописью Евро

Переведем число в евро. Выбираем соответствующую функцию и кликаем по ячейке с числом.

После нажатия ОК получаем результат.

С помощью этих инструментов преобразование числа в текст прописью в Excel выполняется очень просто. Если по каким-то причинам вы не хотите устанавливать их в Excel, можно воспользоваться другим способом.

Формула суммы прописью в Excel — как написать число

Для вывода числа прописью в Excel можно создать формулу. Приведем пример:

ПОДСТАВИТЬ(ПРОПНАЧ(ИНДЕКС(n_4;ПСТР(ТЕКСТ(A3;n0);1;1)+1)&ИНДЕКС(n0x;ПСТР(ТЕКСТ(A3;n0);2;1)+1;ПСТР(ТЕКСТ(A3;n0);3;1)+1)&ЕСЛИ(-ПСТР(ТЕКСТ(A3;n0);1;3);»миллиард»&ВПР(ПСТР(ТЕКСТ(A3;n0);3;1)*И(ПСТР(ТЕКСТ(A3;n0);2;1)-1);мил;2);»»)&ИНДЕКС(n_4;ПСТР(ТЕКСТ(A3;n0);4;1)+1)&ИНДЕКС(n0x;ПСТР(ТЕКСТ(A3;n0);5;1)+1;ПСТР(ТЕКСТ(A3;n0);6;1)+1)&ЕСЛИ(-ПСТР(ТЕКСТ(A3;n0);4;3);»миллион»&ВПР(ПСТР(ТЕКСТ(A3;n0);6;1)*И(ПСТР(ТЕКСТ(A3;n0);5;1)-1);мил;2);»»)&ИНДЕКС(n_4;ПСТР(ТЕКСТ(A3;n0);7;1)+1)&ИНДЕКС(n1x;ПСТР(ТЕКСТ(A3;n0);8;1)+1;ПСТР(ТЕКСТ(A3;n0);9;1)+1)&ЕСЛИ(-ПСТР(ТЕКСТ(A3;n0);7;3);ВПР(ПСТР(ТЕКСТ(A3;n0);9;1)*И(ПСТР(ТЕКСТ(A3;n0);8;1)-1);тыс;2);»»)&ИНДЕКС(n_4;ПСТР(ТЕКСТ(A3;n0);10;1)+1)&ИНДЕКС(ЕСЛИ(-ПСТР(ТЕКСТ(A3;n0);14;6);n1x;n0x);ПСТР(ТЕКСТ(A3;n0);11;1)+1;ПСТР(ТЕКСТ(A3;n0);12;1)+1));»z»;» «)&ЕСЛИ(ОТБР(ТЕКСТ(A3;n0));;»Ноль «)&ЕСЛИ(-ПСТР(ТЕКСТ(A3;n0);14;6);ЕСЛИ(ОСТАТ(МАКС(ОСТАТ(ПСТР(ТЕКСТ(A3;n0);11;2)-11;100);9);10);»целых «;»целая «)&ПОДСТАВИТЬ(ИНДЕКС(n_4;ПСТР(ТЕКСТ(A3;n0);14;6)/10^5+1)&ИНДЕКС(n1x;ОСТАТ(ПСТР(ТЕКСТ(A3;n0);14;6)/10^4;10)+1;ОСТАТ(ПСТР(ТЕКСТ(A3;n0);14;6)/1000;10)+1)&ЕСЛИ(ЦЕЛОЕ(ПСТР(ТЕКСТ(A3;n0);14;6)/1000);ВПР(ОСТАТ(ПСТР(ТЕКСТ(A3;n0);14;6)/1000;10)*(ОСТАТ(ЦЕЛОЕ(ПСТР(ТЕКСТ(A3;n0);14;6)/10^4);10)<>1);тыс;2);»»)&ИНДЕКС(n_4;ОСТАТ(ПСТР(ТЕКСТ(A3;n0);14;6)/100;10)+1)&ИНДЕКС(n1x;ОСТАТ(ПСТР(ТЕКСТ(A3;n0);14;6)/10;10)+1;ОСТАТ(ПСТР(ТЕКСТ(A3;n0);14;6);10)+1);»z»;» «)&ИНДЕКС(доля;ДЛСТР(ПСТР(ТЕКСТ(A3;n0);14;6));(ОСТАТ(МАКС(ОСТАТ(ПСТР(ТЕКСТ(A3;n0);14;6)-11;100);9);10)>0)+1);)

Для ее использования вам необходимо указать несколько массивов Excel:

  • n_1 ={«»;»одинz»;»дваz»;»триz»;»четыреz»;»пятьz»;»шестьz»;»семьz»;»восемьz»;»девятьz»}
  • n_2 ={«десятьz»;»одиннадцатьz»;»двенадцатьz»;»тринадцатьz»;»четырнадцатьz»;»пятнадцатьz»;»шестнадцатьz»;»семнадцатьz»;»восемнадцатьz»;»девятнадцатьz»}
  • n_3 ={«»:1:»двадцатьz»:»тридцатьz»:»сорокz»:»пятьдесятz»:»шестьдесятz»:»семьдесятz»:»восемьдесятz»:»девяностоz»}
  • n_4 ={«»;»стоz»;»двестиz»;»тристаz»;»четырестаz»;»пятьсотz»;»шестьсотz»;»семьсотz»;»восемьсотz»;»девятьсотz»}
  • n_5 ={«»;»однаz»;»двеz»;»триz»;»четыреz»;»пятьz»;»шестьz»;»семьz»;»восемьz»;»девятьz»}
  • n0 =»000000000000″&ПСТР(1/2;2;1)&»0#####»
  • n0x =ЕСЛИ(n_3=1;n_2;n_3&n_1)
  • n1x =ЕСЛИ(n_3=1;n_2;n_3&n_5)
  • доля ={«десятая»;»десятых»:»сотая»;»сотых»:»тысячная»;»тысячных»:»десятитысячная»;»десятитысячных»:»стотысячная»;»стотысячных»:»миллионная «;»миллионных»}
  • мил ={0;»овz»:1;»z»:2;»аz»:5;»овz»}
  • тыс ={0;»тысячz»:1;»тысячаz»:2;»тысячиz»:5;»тысячz»}

Просто скопируйте эту таблицу на лист Excel, а формулу вставляйте туда, где необходима сумма прописью. Вышеприведенная конструкция предназначена для ячейки A3. Не забудьте поменять адрес.

В англоязычном Excel формула суммы прописью будет выглядеть следующим образом:

SUBSTITUTE(PROPER(INDEX(n_4,MID(TEXT(A1,n0),1,1)+1)&INDEX(n0x,MID(TEXT(A1,n0),2,1)+1,MID(TEXT(A1,n0),3,1)+1)&IF(-MID(TEXT(A1,n0),1,3),»миллиард»&VLOOKUP(MID(TEXT(A1,n0),3,1)*AND(MID(TEXT(A1,n0),2,1)-1),мил,2),»»)&INDEX(n_4,MID(TEXT(A1,n0),4,1)+1)&INDEX(n0x,MID(TEXT(A1,n0),5,1)+1,MID(TEXT(A1,n0),6,1)+1)&IF(-MID(TEXT(A1,n0),4,3),»миллион»&VLOOKUP(MID(TEXT(A1,n0),6,1)*AND(MID(TEXT(A1,n0),5,1)-1),мил,2),»»)&INDEX(n_4,MID(TEXT(A1,n0),7,1)+1)&INDEX(n1x,MID(TEXT(A1,n0),8,1)+1,MID(TEXT(A1,n0),9,1)+1)&IF(-MID(TEXT(A1,n0),7,3),VLOOKUP(MID(TEXT(A1,n0),9,1)*AND(MID(TEXT(A1,n0),8,1)-1),тыс,2),»»)&INDEX(n_4,MID(TEXT(A1,n0),10,1)+1)&INDEX(n0x,MID(TEXT(A1,n0),11,1)+1,MID(TEXT(A1,n0),12,1)+1)),»z»,» «)&IF(TRUNC(TEXT(A1,n0)),»»,»Ноль «)&»рубл»&VLOOKUP(MOD(MAX(MOD(MID(TEXT(A1,n0),11,2)-11,100),9),10),{0,»ь «;1,»я «;4,»ей «},2)&RIGHT(TEXT(A1,n0),2)&» копе»&VLOOKUP(MOD(MAX(MOD(RIGHT(TEXT(A1,n0),2)-11,100),9),10),{0,»йка»;1,»йки»;4,»ек»},2)

Как видим, это не самый удобный способ преобразовать число в текст прописью в Excel.

Преобразование с помощью макросов Excel

Можно написать собственную функцию, которая произведет конвертацию суммы прописью. Нажмите сочетание ALT+F11 и в открывшемся разработчике Excel VBA вставьте новый модуль.

В него добавьте следующий код.

Function SUMMPROPIS(n As Double) As String
 Dim Chis1, Chis2, Chis3, Chis4, Chis5 As Variant
 Chis1 = Array("", "один ", "два ", "три ", "четыре ", "пять ", "шесть ", "семь ", "восемь ", "девять ")
 Chis2 = Array("", "десять ", "двадцать ", "тридцать ", "сорок ", "пятьдесят ", "шестьдесят ", "семьдесят ", "восемьдесят", "девяносто ")
 Chis3 = Array("", "сто ", "двести ", "триста ", "четыреста ", "пятьсот ", "шестьсот ", "семьсот ", "восемьсот ", "девятьсот ")
 Chis4 = Array("", "одна ", "две ", "три ", "четыре ", "пять ", "шесть ", "семь ", "восемь ", "девять ")
 Chis5 = Array("десять ", "одиннадцать ", "двенадцать ", "тринадцать ", "четырнадцать ", "пятнадцать ", "шестнадцать ", "семнадцать ", "восемнадцать ", "девятнадцать ")
 If n <= 0 Then
 SUMMPROPIS = "ноль"
 Exit Function
End If
 cifr = Retclass(n, 1)
 des = Retclass(n, 2)
 hund = Retclass(n, 3)
 thous = Retclass(n, 4)
 desthous = Retclass(n, 5)
 hundthous = Retclass(n, 6)
 mil = Retclass(n, 7)
 desmil = Retclass(n, 8)Select Case desmil
 Case 1
 mil_txt = Chis5(mil) & "миллионов "
 GoTo www
 Case 2 To 9
 desmil_txt = Chis2(desmil)
 End Select
 Select Case mil
 Case 1
 mil_txt = Chis1(mil) & "миллион "
 Case 2, 3, 4
 mil_txt = Chis1(mil) & "миллиона "
 Case 5 To 20
 mil_txt = Chis1(mil) & "миллионов "
 End Select
www:
 hundthous_txt = Chis3(hundthous)
 Select Case desthous
 Case 1
 thous_txt = Chis5(thous) & "тысяч "
 GoTo eee
 Case 2 To 9
 desthous_txt = Chis2(desthous)
 End Select
 Select Case thous
 Case 0
 If desthous > 0 Then thous_txt = Chis4(thous) & "тысяч "
 Case 1
 thous_txt = Chis4(thous) & "тысяча "
 Case 2, 3, 4
 thous_txt = Chis4(thous) & "тысячи "
 Case 5 To 9
 thous_txt = Chis4(thous) & "тысяч "
 End Select
 If desthous = 0 And thous = 0 And hundthous <> 0 Then hundthous_txt = hundthous_txt & " тысяч "
eee:
 hund_txt = Chis3(hund)
 Select Case des
 Case 1
 cifr_txt = Chis5(cifr)
 GoTo rrr
 Case 2 To 9
 des_txt = Chis2(des)
 End Select 
 cifr_txt = Chis1(cifr)
rrr:
 SUMMPROPIS = desmil_txt & mil_txt & hundthous_txt & desthous_txt & thous_txt & hund_txt & des_txt & cifr_txt
End Function
Private Function Retclass(M, I)
 Retclass = Int(Int(M - (10 ^ I) * Int(M / (10 ^ I))) / 10 ^ (I - 1))
End Function

Теперь эту функцию можно вызвать обычным путем и получить сумму прописью. Она находится в разделе функций Excel «Определенные пользователем».

В качестве аргумента укажите адрес с числом.

Перевод в сумму прописью осуществляется только для целых чисел.

Дробное число требует дополнительной формулы:

 =SUMMPROPIS(A7)&" руб. "&ТЕКСТ((A7-ЦЕЛОЕ(A7))*100;"00")&" коп."

Вместо ячейки A7 подставляйте свой адрес. Копейки в таком исполнении будут выводиться в виде числа.

Мы рассмотрели все способы представления суммы прописью в Excel. Выбирайте для себя самый удобный и пользуйтесь с удовольствием!

Отличного Вам дня!

Сумма прописью

Ниже вы найдете готовую пользовательскую функцию на VBA, которая переводит любое число от 0 до 9 999 999 в его текстовое представление, т.е. в сумму прописью. Перед использованием, эту функцию необходимо добавить в вашу книгу. Для этого:

  1. нажмите сочетание клавиш ALT+F11, чтобы открыть редактор Visual Basic
  2. добавьте новый пустой модуль через меню Insert — Module
  3. скопируйте и вставьте туда текст этой функции:
Function СУММАПРОПИСЬЮ(n As Double) As String

 Dim Nums1, Nums2, Nums3, Nums4 As Variant

 Nums1 = Array("", "один ", "два ", "три ", "четыре ", "пять ", "шесть ", "семь ", "восемь ", "девять ")
 Nums2 = Array("", "десять ", "двадцать ", "тридцать ", "сорок ", "пятьдесят ", "шестьдесят ", "семьдесят ", _
                        "восемьдесят ", "девяносто ")
 Nums3 = Array("", "сто ", "двести ", "триста ", "четыреста ", "пятьсот ", "шестьсот ", "семьсот ", _
                        "восемьсот ", "девятьсот ")
 Nums4 = Array("", "одна ", "две ", "три ", "четыре ", "пять ", "шесть ", "семь ", "восемь ", "девять ")
 Nums5 = Array("десять ", "одиннадцать ", "двенадцать ", "тринадцать ", "четырнадцать ", _
                        "пятнадцать ", "шестнадцать ", "семнадцать ", "восемнадцать ", "девятнадцать ")

 If n <= 0 Then
   СУММАПРОПИСЬЮ = "ноль"
   Exit Function
 End If
 'разделяем число на разряды, используя вспомогательную функцию Class
 ed = Class(n, 1)
 dec = Class(n, 2)
 sot = Class(n, 3)
 tys = Class(n, 4)
 dectys = Class(n, 5)
 sottys = Class(n, 6)
 mil = Class(n, 7)
 decmil = Class(n, 8)

 'проверяем миллионы
 Select Case decmil
   Case 1
     mil_txt = Nums5(mil) & "миллионов "
     GoTo www
   Case 2 To 9
     decmil_txt = Nums2(decmil)
 End Select
 Select Case mil
   Case 1
     mil_txt = Nums1(mil) & "миллион "
   Case 2, 3, 4
     mil_txt = Nums1(mil) & "миллиона "
   Case  5 To 20
     mil_txt = Nums1(mil) & "миллионов "
 End Select
 www:
 sottys_txt = Nums3(sottys)
 'проверяем тысячи
 Select Case dectys
   Case 1
     tys_txt = Nums5(tys) & "тысяч "
     GoTo eee
   Case 2 To 9
     dectys_txt = Nums2(dectys)
 End Select
 Select Case tys
   Case 0
     If dectys > 0 Then tys_txt = Nums4(tys) & "тысяч "
   Case 1
     tys_txt = Nums4(tys) & "тысяча "
   Case 2, 3, 4
     tys_txt = Nums4(tys) & "тысячи "
   Case 5 To 9
     tys_txt = Nums4(tys) & "тысяч "
 End Select
 If dectys = 0 And tys = 0 And sottys <> 0 Then sottys_txt = sottys_txt & " тысяч "
 eee:
 sot_txt = Nums3(sot)
 'проверяем десятки
 Select Case dec
   Case 1
     ed_txt = Nums5(ed)
     GoTo rrr
   Case 2 To 9
     dec_txt = Nums2(dec)
 End Select

 ed_txt = Nums1(ed)
 rrr:
 'формируем итоговую строку
 СУММАПРОПИСЬЮ = decmil_txt & mil_txt & sottys_txt & dectys_txt & tys_txt & sot_txt & dec_txt & ed_txt
End Function

'вспомогательная функция для выделения из числа разрядов
Private Function Class(M, I)
  Class = Int(Int(M - (10 ^ I) * Int(M / (10 ^ I))) / 10 ^ (I - 1))
End Function

Сохраните файл (если у вас Excel 2007 или 2010, то тип файла должен быть с поддержкой макросов, т.е. в формате xlsm!) и вернитесь в Excel. Теперь вы можете вставить созданную функцию в любую ячейку листа этой книги обычным способом — через мастер функций (кнопка fx в строке формул, категория Определенные пользователем) или просто набрав ее в ячейке вручную и указав в качестве аргумента ячейку с суммой:

propis1.gif

Если вам необходимо добавить к полученному тексту копейки, то можно воспользоваться чуть более сложной конструкцией:

 =СУММАПРОПИСЬЮ(A3)&» руб. «&ТЕКСТ((A3-ЦЕЛОЕ(A3))*100;»00″)&» коп.» 

=СУММАПРОПИСЬЮ(A3)&» руб. «&TEXT((A3-INT(A3))*100;»00″)&» коп.»

Тогда, например, для числа 35,15 результат функции будет выглядеть как «тридцать пять руб. 15 коп.»

Ссылки по теме

  • Более мощный вариант функции с рублями и копейками на русском/английском из надстройки PLEX
  • Что такое макросы, куда вставлять код макроса, как их использовать

Сумма прописью в Microsoft Excel

Сумм прописью в Microsoft Excel

​Смотрите также​ ссылкой на дополнительный​ функция для выделения​ — 1, 2)​ txt = txt​ 1, «восемь рублей»,​ n = Right(n,​ оно отображалось прописью​Мастера текстов​Выделяем исходную область и​ пиктограмма появилась одна​ внесем​ она отобразится в​Вставьте строки кода в​ = » Trillion​ ячейку формулу:​ необходимую надстройку в​При заполнении различных финансовых​ лист​ из числа разрядов​ = «10» Then​

​ & Edinicy(Mid(SumInt, shag​ «восемь долларов»)) Edinicy(9)​

Использование надстройки

​ 1) End Select​ (словами) на русском​и жмем на​ производим щелчок по​ для всей области,​«0,0»​ ячейке ниже. Это​

​ поле​ » ‘ String​=ЕСЛИ(A1;СЖПРОБЕЛЫ(​ программу.​ документов часто требуется​

  1. ​2. Формулой с​ Private Function Class(M,​​ vl = Mid(SumInt,​​ — 1, 2))​

    Переход в раздел Файл в Microsoft Excel

  2. ​ = «девять «:​​ Dim Двадцатка As​​ или других языках.​

    Переход в раздел Параметры в Microsoft Excel

  3. ​ кнопку​ ней правой кнопкой​​ а не для​​, то результат будет​

    Переход в надстройки в Microsoft Excel

  4. ​ означает, что преобразование​​Module1 (Code)​​ representation of amount.​​ИНДЕКС(PERSONAL.XLSB!Миллионы;ОКРУГЛВНИЗ(A1;-6)/1000000+1)&» «&​​Автор: Максим Тютюшев​​ прописать сумму не​​ использованием имен​

    Перемещение в надстройки в программе Microsoft Excel

  5. ​ I) Class =​ shag, 1) Else​ & «мільярдів «​​ EdinicyPoslednie(9) = IIf(Valuta​​ String Двадцатка =​

    Переход к поиску надстройки в Microsoft Excel

  6. ​ Так как по​«Готово»​ мыши. В активировавшемся​ каждой ячейки в​ отображаться с одним​ было совершено не​(Модуль 1 —​​ MyNumber = Trim(Str(MyNumber))​​ИНДЕКС(PERSONAL.XLSB!тысячи;ОСТАТ(ОТБР(A1/1000);1000)+1)&» «&​

    Выбор надстройки в Microsoft Excel

  7. ​Запишем число прописью в​ только числом, но​3. с помощью​ Int(Int(M — (10​ vl = Mid(SumInt,​ Else txt =​​ = 0, «девять​​ «» Select Case​

    Активация надстройки в Microsoft Excel

  8. ​ умолчанию нет готовой​.​ контекстном списке переходим​ отдельности. Щелкаем по​ десятичным знаком, если​ полностью. В этом​ код).​ ‘ Position of​​ИНДЕКС(PERSONAL.XLSB!Единицы;ОСТАТ(A1;1000)+1)&» руб. «&ТЕКСТ((A1-ЦЕЛОЕ(A1))*100;»00»)&»​​ Excel без использования VBA.​ и прописью. Конечно,​

    Запуск мастера функций в Microsoft Excel

  9. ​ UDF​ ^ I) *​ shag — 1,​​ txt & Edinicy(vl)​​ евро», IIf(Valuta =​ n Case «0»:​ функции, создадим свою​Как видим, после выполнения​ по пунктам​ ней.​​«0,00»​​ и заключается одна​

    Вызов функции Сумма прописью в Microsoft Excel

  10. ​Нажмите клавиши​​ decimal place 0​​ коп.»);»ноль руб. 00​ Вспомогательные диапазоны разместим​​ это занимает гораздо​​MCH​ Int(M / (10​ 2) txt =​ & mlrd(vl) ‘числа​ 1, «девять рублей»,​ Двадцатка = «»​ пользовательскую функцию с​

    Числовой аргумент функции сумма_прописью в Microsoft Excel

    ​ данных действий числа​«Специальная вставка»​Открывается уже знакомый нам​, то с двумя,​ из фишек Excel.​Alt + Q​ if none. DecimalPlace​ коп.»)​ в личной книге​ больше времени, чем​​: Сумма прописью на​​ ^ I))) /​​ txt & EdinicyPoslednie(vl)​​ в диапозоне от​

    Аргумент функции сумма_прописью в Microsoft Excel

  11. ​ «девять долларов»)) Edinicy(11)​ Case «1» Select​ помощью макросов.​ приняли привычный для​и​ список. Как и​ и т.д.​ Программа не дает​

Результат функции сумма_прописью в Microsoft Excel

​, чтобы вернуться​ = InStr(MyNumber, «.»)​Формула отобразит число прописью.​ макросов. Кроме того,​​ обычное написание с​​ таджикском языке​​ 10 ^ (I​​ ‘-КОНЕЦ БЛОКА_______________________ End​ 11 до 19​ = «одиннадцать «:​​ Case Sex Case​​Для создания пользовательской функции,​ русскоязычной версии формат,​​«Значения и форматы чисел»​​ в прошлый раз,​После того, как все​ завершить преобразование данных​

Результат функции записанной вручную в Microsoft Excel

​ в Microsoft Excel.​ ‘ Convert cents​​ Ячейки, содержащие исходное​​ добавим руб./коп. для​ помощью цифр. Если​Реализовано формулой и​ — 1)) End​ Select 10: Next​ склоняются на «мільярдов»​

Результат функции записанной вручную с координатами ячеек в Microsoft Excel

​ EdinicyPoslednie(11) = IIf(Valuta​ «м»: Двадцатка =​ которая сможет перевести​ а это значит,​.​ выбираем позицию​ требуемые параметры введены,​ наиболее интуитивно понятным​ Функция SpellNumber теперь​ and set MyNumber​

​ число и формулу,​

lumpics.ru

Число прописью в Excel (динамический вариант)

​ записи денежных сумм,​ подобным образом нужно​ два варианта UDF​ Function​ x a =​ независимо от последнего​ = 0, «одиннадцать​ «один » Case​ число в текст​ что они одновременно​

​Все данные вставлены в​«Преобразовать в число»​ щелкаем по кнопке​ способом.​ готов к использованию.​ to dollar amount.​ можно перенести в​ например: четыреста сорок​ заполнить не одно,​MCH​Сохраните файл (если у​

​ SumBase b =​ числа триады Else​ евро», IIf(Valuta =​ «ж»: Двадцатка =​ прописью , нам​ были преобразованы из​

  • ​ нужном нам виде.​.​
  • ​«OK»​Чтобы завершить преобразование, нам​Примечание:​ If DecimalPlace >​
  • ​ любое место в​ четыре руб. 00​ а много документов,​
  • ​: Сумма прописью на​ вас Excel 2007​ Int(a) c =​ txt = txt​ 1, «одиннадцать рублей»,​

​ «одна » Case​ нужно выполнить 3​ текстовых данных в​ Теперь можно удалить​Все данные массива будут​.​ нужно последовательно двойным​ Эта функция работает только​ 0 Then Cents​ книге или даже​ коп.​

​ то временные потери​ туркменском, азербайджанском (кириллицей​ или 2010, то​ (a — b)​

  • ​ & Edinicy(vl) &​ «одиннадцать долларов»)) Edinicy(12)​ «с»: Двадцатка =​ простых шага:​ числовые.​
  • ​ транзитный диапазон, в​ преобразованы в указанный​Как видим, значение первого​ щелчком левой кнопки​ для текущей книги.​ = GetTens(Left(Mid(MyNumber, DecimalPlace​
  • ​ в другую книгу.​Иногда требуется записать число​ становятся огромными. Кроме​ и латиницей) и​ тип файла должен​ * 100 If​ mlrd(vl) End If​ = «двенадцать «:​ «одно » End​Открыть редактор макросов ALT+F11.​Если вам часто приходится​ котором находится формула​

​ вид.​ элемента заданного диапазона​ мыши поместить курсор​​ Для использования этой​​ + 1) &​Чтобы еще больше приблизиться​​ прописью: 256 записать​​ того, именно в​ турецком языках​

​ быть с поддержкой​ c = 0​

​ ‘-КОНЕЦ БЛОКА_______________________ Case​ EdinicyPoslednie(12) = IIf(Valuta​ Select Case «2»:​Создать новый модуль и​ преобразовывать большие области​ двойного бинарного отрицания.​

​Как и для преобразования​ отобразилось в ячейке,​ в каждый элемент​ функции в другой​ _ «00», 2))​ к идеалу создадим​ как двести пятьдесят​ записи суммы прописью​Функция на турецком​

​ макросов, т.е. в​ Then c =​ 9 ‘ -​​ = 0, «двенадцать​​ Select Case Sex​
​ в нем нужно​
​ данных из текстового​
​ Для этого выделяем​
​ данных из числового​

​ которую мы выделили​ диапазона в отдельности​ книге, необходимо повторить​ MyNumber = Trim(Left(MyNumber,​ именованную формулу ЧислоПрописью.​ шесть. Набирать этот​ наиболее часто встречаются​ реализована не полностью​ формате xlsm!) и​

​ CStr(c) + «0»​ сотни миллионов vl​ евро», IIf(Valuta =​ Case «м»: Двадцатка​ написать функцию особенным​ формата в числовой,​ данную область, кликом​ вида в текст,​ ещё в первом​ и нажать на​ шаги, скопируйте и​

​ DecimalPlace — 1))​ Для этого:​ текст безумно скучно,​ грамматические ошибки. Давайте​ (отсутствуют копейки)​ вернитесь в Excel.​ d = «»​ = Mid(SumInt, shag,​ 1, «двенадцать рублей»,​ = «два «​ способом: Function вместо​

​ то имеется смысл​ правой кнопки мыши​ в Экселе существует​ пункте данного руководства.​ клавишу​ вставьте код в​ End If Count​выделите ячейку​ кроме того легко​ выясним, как сделать​EvgeniyaD​

​ Теперь вы можете​​ If Valuta =​ 1) txt =​​ «двенадцать долларов»)) Edinicy(13)​ Case «ж»: Двадцатка​​ Sub. Тогда наша​​ в этих целях​ вызываем контекстное меню​
​ возможность обратного конвертирования​
​ Для того, чтобы​
​Enter​
​ этой книге.​ = 1 Do​B1​

​ ошибиться, поэтому давно​ так, чтобы числа​: Раз предыдущий топик​ вставить созданную функцию​ 1 Then d​ txt & Sotni(vl)​ = «тринадцать «:​

​ = «две «​ функция «ЧислоПропись» будет​ записать специальный макрос,​ и выбираем в​

  • ​ через окно форматирования.​​ перенести и другие​​. Чтобы упростить задачу​
  • ​К началу страницы​ While MyNumber <>​;​ написаны макросы на​
  • ​ прописью вносились автоматически.​ удалился, напишу вопрос​
  • ​ в любую ячейку​
  • ​ = «коп.» Else​​ Case 8 ‘​​ EdinicyPoslednie(13) = IIf(Valuta​
  • ​ Case «с»: Двадцатка​​ отображаться в списке​​ который будет использоваться​ нем позицию​

​Выделяем диапазон, содержащий цифры​​ значения, нужно скопировать​​ вместо двойного щелчка​Введите формулу​ «» Temp =​через меню Формулы/ Определенные​ VBA, которые легко​Скачать последнюю версию​ заново здесь. Как​ листа этой книги​ d = «цен.»​

​ — десятки миллионов​ = 0, «тринадцать​ = «Два «​ мастера функций (SHIFT+F3),​ при необходимости. Но​«Очистить содержимое»​ в текстовом варианте.​ формулу в смежные​ можно использовать нажатие​= SpellNumber​ GetHundreds(Right(MyNumber, 3)) If​

excel2.ru

Преобразование чисел в слова

​ имена/ Присвоить имя​​ справляются с этой​ Excel​ только в вставила,​ обычным способом -​ If Valuta >​ vl = Mid(SumInt,​ евро», IIf(Valuta =​ End Select Case​ в категории «Определенные​ для того, чтобы​.​ Кликаем правой кнопкой​ элементы листа. Устанавливаем​ функциональной клавиши​(​ Temp <> «»​ создайте именованную формулу​ задачей.​В Эксель нет встроенного​ формула работала как​

​ через мастер функций​ 2 Or Valuta​ shag, 1) If​ 1, «тринадцать рублей»,​ «3»: Двадцатка =​ пользователем».​ это выполнить, прежде​Кстати, для преобразования значений​ мыши. В контекстном​ курсор в нижний​F2​A1​ Then Dollars =​ ЧислоПрописью;​В статье Число прописью​ инструмента, который бы​ часы. но после​ (кнопка​ 2 Or Valuta​ vl = «1»​ «тринадцать долларов»)) Edinicy(14)​ «три » Case​

​Вставить в модуль следующий​ всего, нужно в​ данным методом совсем​ меню выбираем позицию​ правый угол элемента,​.​

​) в ячейку, которую​​ Temp & Place(Count)​в поле Диапазон введите​ (статичный вариант) приведено​ помогал автоматически переводить​ закрытия и открытия​f​ < 0 Then​ And Mid(SumInt, shag​ = «четырнадцать «:​ «4»: Двадцатка =​ код и сохранить:​ своей версии Экселя​ не обязательно использовать​«Формат ячеек…»​ который содержит формулу.​После выполнения данной процедуры​ вы хотите отобразить​ & Dollars If​ формулу указанную выше:​ решение этой задачи​ цифры в слова.​ документа в начале​x​ GoTo 11 ЧислоПрописьюВалюта​

Создание функции SpellNumber для преобразования чисел в слова

  1. ​ + 1, 1)​​ EdinicyPoslednie(14) = IIf(Valuta​​ «четыре » Case​​​​ включить макросы и​ исключительно двойное умножение​.​

    ​ Курсор преобразуется в​​ со всеми ячейками​ письменного номер, где​ Len(MyNumber) > 3​нажмите ОК;​

  2. ​ позволяющей перевести число​​ Поэтому для решения​​ появились какие-то нули.​​в строке формул,​​ = txt +​

    В меню Insert выберите пункт Module.

  3. ​ <> 0 Then​

    ​ = 0, «четырнадцать​​ «5»: Двадцатка =​Function ЧислоПропись(Число As Currency)​ панель разработчика, если​ на​Выполняется запуск окна форматирования.​

    ​ маркер заполнения, имеющий​ области, данные в​ A1 — ячейку,​ Then MyNumber =​в ячейке​ в текстовую форму​ поставленной задачи используют​ В чем может​ категория​ " " +​ GoTo 10 Else​ евро", IIf(Valuta =​ "пять " Case​ As String 'до​ это до сих​«-1»​ Как и в​ вид небольшого крестика.​ них будут восприниматься​ содержащую число вы​ Left(MyNumber, Len(MyNumber) -​В1​ по следующему алгоритму:​ специальные надстройки.​ быть дело и​Определенные пользователем​ CStr(c) + d​ txt = txt​ 1, "четырнадцать рублей",​ "6": Двадцатка =​ 999 999 999​ пор не сделано.​. Можно применять любое​ предыдущий раз, переходим​ Зажимаем левую кнопку​ программой, как текстовые​ хотите преобразовать. Можно также​ 3) Else MyNumber​введите формулу =ЧислоПрописью​вводим число в определенную​Одной из самых удобных​ возможно ли это​) или просто набрав​ 11: End Function​ & Desyatki(vl) '​ "четырнадцать долларов")) Edinicy(15)​ "шесть " Case​ 999 On Error​Переходим во вкладку​ другое арифметическое действие,​ во вкладку​ мыши и протаскиваем​ выражения, а, следовательно,​ вручную ввести значение​ = "" End​ячейка​ ячейку;​ является надстройка NUM2TEXT.​ исправить? Спасибо.​ ее в ячейке​Если мы указываем число​ - если конец​ = "пятнадцать ":​ "7": Двадцатка =​ GoTo Число_Error Dim​«Разработчик»​ которое не ведет​«Число»​ по пустым ячейкам​ и автосумма будет​ как = SpellNumber(22.50).​ If Count =​В1​с помощью формул, вспомогательных​ Она позволяет поменять​MCH​ вручную и указав​ (от 0 до​ триады от 11​ EdinicyPoslednie(15) = IIf(Valuta​ "семь " Case​ strМиллиарды As String,​. Жмем на значок​ к изменению значений​. В группе​ параллельно диапазону, в​ равна нулю. Кроме​Нажмите клавишу​ Count + 1​будет содержать число​ диапазонов с текстом​ цифры на буквы​: Открыл файл в​ в качестве аргумента​ 2)в параметре второй​ до 19 то​ = 0, "пятнадцать​ "8": Двадцатка =​ strМиллионы As String,​ на ленте​ (сложение или вычитание​«Числовые форматы»​ котором находятся исходные​ того, как видим,​Ввод​ Loop Select Case​ прописью.​ и имен получаем​ через Мастер функций.​ MS Excel 2010​ ячейку с суммой:​ функции «ЧислоПрописьюВалюта» то​ перескакиваем на единицы,​ евро", IIf(Valuta =​ "восемь " Case​ strТысячи As String,​«Visual Basic»​ нуля, выполнение возведения​нам нужно выбрать​ данные.​ левый верхний угол​, чтобы подтвердить формулу.​ Dollars Case ""​Теперь ячейки​ число прописью;​Открываем программу Excel и​Нулей не увидел,​Если вам необходимо добавить​ функция автоматически подставит​ иначе - формируем​ 1, "пятнадцать рублей",​ "9": Двадцатка =​ strЕдиницы As String,​, который размещен в​ в первую степень​ значения, которые позволят​Теперь весь ряд заполнен​ ячеек будет окрашен​К началу страницы​ Dollars = "No​А1В1​копируем результат вычисления формулы​ переходим во вкладку​ в ячейке А56​ к полученному тексту​ нужную валюту в​ десятки Case 7​ "пятнадцать долларов")) Edinicy(16)​ "девять " Case​ strСотые As String​ группе​ и т.д.)​ преобразовать текст в​ требуемыми данными. Но​ в зеленый цвет.​Excel не может сохранить​ Dollars" Case "One"​можно скопировать и​ (число прописью) в​«Файл»​ находится текст: "Две​ копейки, то можно​ сумме прописью:​ ' - единицы​ = "шестнадцать ":​ "10": Двадцатка =​ Dim Поз As​«Код»​Урок:​ число. К ним​ и это ещё​ Это также является​ книгу с помощью​ Dollars = "One​ перенести в любое​ Буфер обмена;​.​
  4. ​ тысячи шестьдесят восемь​ воспользоваться чуть более​​1-рубли;​​ миллионов vl =​ EdinicyPoslednie(16) = IIf(Valuta​

    Код, вставленный в поле Module1 (Code).

  5. ​ «десять » Case​​ Integer strЧисло =​​.​Как сделать автозаполнение в​ относится пункты​ не все. По​

    ​ косвенным признаком того,​​ функции макросов в​ Dollar» Case Else​ место в книге,​вставляем текст в любую​Перемещаемся в раздел​ рублей 00 копеек»​ сложной конструкцией:​2-доллары;​

​ Mid(SumInt, shag, 1)​

Использование функции SpellNumber в отдельных ячейках

  1. ​ = 0, «шестнадцать​​ «11»: Двадцатка =​​ Format(Int(Число), «000000000000») ‘Миллиарды’​​Запускается стандартный редактор макросов.​​ Excel​«Общий»​ сути, все элементы​ что элементы, в​ формате стандартной книги​ Dollars = Dollars​ но они должны​ открытую книгу «Как​

  2. ​«Параметры»​​Alex_ST​​ =СУММАПРОПИСЬЮ(A3)&» руб. «&ТЕКСТ((A3-ЦЕЛОЕ(A3))*100;»00″)&» коп.» ​

​0-евро;​

Сохранение книги с функцией SpellNumber

​ If shag >​ евро», IIf(Valuta =​ «одиннадцать » Case​ Поз = 1​ Вбиваем или копируем​Следующий способ по принципу​​и​​ нового диапазона содержат​​ которых находятся цифры,​​ без поддержки макросов​​ & » Dollars»​​ быть всегда на​​ значение» (Главная/ Буфер​​.​

В диалоговом окне проекта VB щелкните

​: «В начале» это​=СУММАПРОПИСЬЮ(A3)&» руб. «&TEXT((A3-INT(A3))*100;»00″)&» коп.»​​Как видите, этот VBA-код​ 2 Then If​​ 1, «шестнадцать рублей»,​ «12»: Двадцатка =​

  1. ​ strМиллиарды = Сотни(Mid(strЧисло,​​ в него следующее​​ действия очень похож​​«Числовой»​​ в себе формулы.​

  2. ​ преобразованы в текстовый​​ (XLSX). Если щелкнуть​​ End Select Select​​ одной строке и​ обмена/ Вставить/ Вставить​​В активном окне параметров​

  3. ​ где? На каком​​Тогда, например, для числа​​ макроса преобразует числа​

​ (Mid(SumInt, shag -​

support.office.com

Преобразование числа в текст и обратно в Microsoft Excel

Текст в числа и наоборот в Microsoft Excel

​ «шестнадцать долларов»)) Edinicy(17)​ «двенадцать » Case​ Поз, 1)) strМиллиарды​ выражение:​ на предыдущий с​. Какой бы из​ Выделяем эту область​ вариант отображения. Хотя​файл​ Case Cents Case​ в соседних столбцах,​ как значение).​ переходим в раздел​ листе? В какой​ 35,15 результат функции​

​ в слова. После​ 2, 1) =​

Конвертация числа в текстовый вид

​ = «семнадцать «:​ «13»: Двадцатка =​ = strМиллиарды &​Sub Текст_в_число()​ той лишь разницей,​ них вы не​ и жмем на​ этот признак не​>​ «» Cents =​ т.к. именованной формуле​Это не всегда удобно.​«Надстройки»​ ячейке?​ будет выглядеть как​ вставки данного кода​ 0 And Mid(SumInt,​ EdinicyPoslednie(17) = IIf(Valuta​ «тринадцать » Case​ Десятки(Mid(strЧисло, Поз +​Selection.NumberFormat = «General»​ что для его​

​ выбрали, программа будет​ значок​ всегда является обязательным​Сохранить​

Способ 1: форматирование через контекстное меню

​ » and No​ использована относительная ссылка.​ Хочется по аналогии​.​

  1. ​У Вас на​ «тридцать пять руб.​ в модуль редактора​ shag — 1,​ = 0, «семнадцать​​ «14»: Двадцатка =​​ 1, 2), «м»)​Selection.Value = Selection.Value​​ использования не нужно​​ расценивать цифры, введенные​«Копировать»​ и в некоторых​. Откроется диалоговое окно​ Cents» Case «One»​При пересылке файла, например,​ с функциями на​Далее, в параметре настроек​

    Общий формат в Microsoft Excel

  2. ​ листе «Гарантированный» в​ 15 коп.»​ макросов, у нас​ 1) = 0​​ евро», IIf(Valuta =​​ «четырнадцать » Case​

    Переход в окно форматирования в Microsoft Excel

  3. ​ strМиллиарды = strМиллиарды​End Sub​​ создавать дополнительный столбец.​​ в ячейку, как​, который расположен во​ случаях такая пометка​проекта VB​​ Cents = «​​ по электронной почте,​​ VBA написать что​​«Управление»​ начале в ячейках​MCH​​ работает новая функция,​​ And vl =​ 1, «семнадцать рублей»,​

    Окно форматирования в Microsoft Excel

  4. ​ «15»: Двадцатка =​ & ИмяРазряда(strМиллиарды, Mid(strЧисло,​После этого закрываем редактор,​В любую пустую ячейку​ числа. Производим выбор​ вкладке​

    Ячейки преобоазованы в текстовый формат в Microsoft Excel

  5. ​ отсутствует.​. Нажмите кнопку​ and One Cent»​ формула будет продолжать​ то вроде =ЧислоПрописью(А1)​устанавливаем значение​ А5:А11 битая формула,​:​ которую можно вызвать​ «0») Then GoTo​ «семнадцать долларов»)) Edinicy(18)​ «пятнадцать » Case​ Поз + 1,​

    Автосумма в Microsoft Excel

  6. ​ выполнив нажатие стандартной​ на листе вписываем​ и жмем на​«Главная»​Урок:​Нет​ Case Else Cents​ работать, не смотря​​ и получить результат.​​«Надстройки Excel»​ возвращающая значение​В связи с удалением​ из мастера (кнопка​​ 10 End If​​ = «восемнадцать «:​

    Преобразование числа в текст в Microsoft Excel

  7. ​ «16»: Двадцатка =​ 2), «миллиард «,​ кнопки закрытия в​ цифру​ кнопку. Если вы​на ленте инструментов​Как изменить формат в​.​ = » and​ на то, что​ Все промежуточные вычисления​. Жмем на кнопку​#ССЫЛКА!​ оригинальной темы (http://www.excelworld.ru/forum/3-3521-1),​ fx возле строки​ If shag >​ EdinicyPoslednie(18) = IIf(Valuta​ «шестнадцать » Case​ «миллиарда «, «миллиардов​ верхнем правом углу​«1»​ выбрали значение​ группе​

Автосумма равна 0 в Microsoft Excel

​ Excel​​Можно сохранить файл в​ » & Cents​

Способ 2: инструменты на ленте

​ Личная книга макросов​ должны быть «за​«Перейти…»​. Наверное, что-то удалили​ размещаю дубликат​ формул).​ 1 Then If​ = 0, «восемнадцать​

  1. ​ «17»: Двадцатка =​ «) ‘Миллионы’ Поз​ окна.​. Затем выделяем её​​«Числовой»​​«Буфер обмена»​Преобразовать число в текстовый​ формате​ & » Cents»​ не пересылалась, т.е.​ кадром». Но, создание​​.​​ не аккуратно, потому​

    Переход к форматированию на ленте в Microsoft Excel

  2. ​Решил опубликовать собственные​Скачать число прописью в​​ Mid(SumInt, shag -​​ евро», IIf(Valuta =​

    Выбор текстового формата в Microsoft Excel

  3. ​ «семнадцать » Case​ = 4 strМиллионы​Выделяем фрагмент на листе,​ и жмем на​, то в правой​.​ вид можно также​​Книга Excel с поддержкой​​ End Select SpellNumber​ Ваши коллеги получившие​​ пользовательских функций это​​Открывается небольшое окно надстроек​

​ и ошибка.​ наработки в этом​

Способ 3: использование функции

​ Excel.​ 1, 1) =​ 1, «восемнадцать рублей»,​ «18»: Двадцатка =​ = Сотни(Mid(strЧисло, Поз,​ который нужно преобразовать.​​ знакомый значок​​ части окна появится​Далее, если мы хотим​ воспользовавшись инструментами на​ макросов (xlsm)​ = Dollars &​ файл, смогут с​ прерогатива VBA.​ Excel. Жмем на​Но это явно​ направлении.​Теперь вы можете быстро​ 1 Then txt​ «восемнадцать долларов»)) Edinicy(19)​ «восемнадцать » Case​ 1)) strМиллионы =​ Жмем на значок​

  1. ​«Копировать»​ возможность отрегулировать представление​ сохранить оба диапазона​ ленте, в частности,​, чтобы сохранить файл​​ Cents End Function​​ ним работать как​Тем не менее, можно​

    Переход в Мастер функций в Microsoft Excel

  2. ​ кнопку​​ не из-за формулы​​Есть решения на​​ перевести сумму в​​ = txt &​​ = «девятнадцать «:​​ «19»: Двадцатка =​ strМиллионы & Десятки(Mid(strЧисло,​​«Макросы»​​на ленте.​

    Переход к аргументам функции ТЕКСТ в Microsoft Excel

  3. ​ числа: выставить количество​​ (исходный и преобразованный),​​ использовав поле для​ в текущем формате.​

    ​ ' Converts a​

    ​ Вы.​ предложить следующее решение​«Обзор…»​​ вычисления суммы прописью,​​ формулах и с​​ слова прописью. Чтобы​​ Edinicy(Mid(SumInt, shag -​

    ​ EdinicyPoslednie(19) = IIf(Valuta​​ «девятнадцать » End​​ Поз + 1,​, который расположен на​Выделяем область на листе,​ десятичных знаков после​ не снимаем выделение​ показа формата, о​На вкладке​ number from 100-999​

    ​Примечание:​​ с помощью обычных​​.​ которая на листе​ помощью UDF.​​ воспользоваться готовым решением​​ 1, 2)) &​ = 0, «девятнадцать​ Select Десятки =​ 2), «м») strМиллионы​ вкладке​ которую следует преобразовать.​ запятой, установить разделителями​​ с области, которая​​ котором шел разговор​Файл​ into text Function​​ Мы стараемся как можно​​ формул:​В открывшемся окне ищем​

    ​ «А» в ячейке​Так как представлены​ рекомендуем скачать пример​​ «мільйонів » Else:​​ евро», IIf(Valuta =​

    Аргументы функции ТЕКСТ в Microsoft Excel

  4. ​ Десятки & Двадцатка​ = strМиллионы &​«Разработчик»​ Кликаем по ней​ между разрядами. После​ содержит формулы. Кликаем​ выше.​выберите команду​ GetHundreds(ByVal MyNumber) Dim​ оперативнее обеспечивать вас​разместить в Личной книге​ предварительно скачанный и​ А56 работает нормально.​ прописи не только​ числа прописью в​ txt = txt​ 1, «девятнадцать рублей»,​ End Function Function​ ИмяРазряда(strМиллионы, Mid(strЧисло, Поз​в группе​ правой кнопкой мыши.​ того, как настройка​ по ней правой​

    Маркер заполнения в Microsoft Excel

  5. ​Выделяем элементы, данные в​Сохранить как​ Result As String​ актуальными справочными материалами​ макросов (PERSONAL.XLSB) вспомогательные​ сохраненный на жесткий​EvgeniyaD​ на русском языке,​ Excel. Данный файл​ & Edinicy(vl) &​​ «девятнадцать долларов»)) »———————————————​​ ИмяРазряда(Строка As String,​ + 1, 2),​​«Код»​​ В открывшемся меню​ выполнена, жмем на​​ кнопкой мыши. Происходит​​ которых нужно преобразовать​

    Копирование в Microsoft Excel

  6. ​.​ If Val(MyNumber) =​ на вашем языке.​ диапазоны, содержащие некоторые​ диск компьютера файл​: MCH, ясно. Отображается​ то если вы​ содержит уже готовую​ mln(vl) ‘числа в​ Desyatki(0) = «»:​ n As String,​​ «миллион «, «миллиона​​.​ дважды переходим по​ кнопку​​ запуск контекстного списка​​ в текстовый вид.​

    Специальная вставка в Microsoft Excel

    ​Щелкните раскрывающееся меню​ 0 Then Exit​ Эта страница переведена​ числа прописью (от​ надстройки NUM2TEXT.xla. Выделяем​ у нас по-разному.​ найдете ошибки в​ пользовательскую функцию и​

    Специальная вставка в исходный диапазон в Microsoft Excel

  7. ​ диапозоне от 11​ Sotni(0) = «»:​ Имя1 As String,​ «, «миллионов «)​Открывается окно записанных в​ пункту​«OK»​ действий. Выбираем в​ Находясь во вкладке​Тип файла​ Function MyNumber =​ автоматически, поэтому ее​ 0 до 999);​​ его и жмем​​ Alex_ST, «гарантированный» просто​

Очистка содержимого в Microsoft Excel

​ написании числительных, прошу​ VBA-код макроса, который​

​ до 19 склоняются​​ tys(0) = «тисячь​

Конвертация текста в число

​ Имя24 As String,​ ‘Тысячи’ Поз =​ вашей версии программы​«Специальная вставка»​.​ нем позицию​

Способ 1: преобразование с помощью значка об ошибке

​«Главная»​и выберите​ Right(«000» & MyNumber,​ текст может содержать​создать формулу, переводящую в​ на кнопку​ забыла удалить. Я​ сообщить, внесу соответствующие​ доступен в модуле​ на «мільярдов» независимо​ «: mln(0) =​ ИмяПроч As String)​ 7 strТысячи =​ макросов. Находим макрос​.​Теперь, как и в​«Специальная вставка»​кликаем по пиктограмме​Книгу Excel с поддержкой​ 3) ‘ Convert​ неточности и грамматические​ текст любое число​«OK»​ имела ввиду именно​ поправки​ из редактора.​ от последнего числа​ «миллионов «: mlrd(0)​ As String If​ Сотни(Mid(strЧисло, Поз, 1))​ с наименованием​В окне специальной вставки​ случае преобразования числа​. Среди вариантов действий​ в виде треугольника​ макросов​ the hundreds place.​ ошибки. Для нас​ от 0 до​

  1. ​.​ ячейку а56. Но,​Для начала, сумма​Ниже вы найдете готовую​ триады Else txt​

    Значок об ошибке в Microsoft Excel

  2. ​ = «миллиардов «​ Строка <> «»​ strТысячи = strТысячи​​«Текст_в_число»​​ выставляем переключатель в​

    Преобразование в число в Microsoft Excel

  3. ​ в текст, нам​ в открывшемся списке​ справа от поля,​.​

Значение в ячейке преобразовано в число в Microsoft Excel

​ If Mid(MyNumber, 1,​ важно, чтобы эта​ 1 млрд. с​Мы видим, что данный​ видимо, зависит от​ прописью без использования​

  1. ​ пользовательскую функцию на​ = txt &​ Desyatki(1) = «десять​ Then ИмяРазряда =​ & Десятки(Mid(strЧисло, Поз​, выделяем его и​ блоке​ нужно прощелкать все​ выбираем​

    Пиктограмма для диапазона в Microsoft Excel

  2. ​ в котором отображается​Нажмите кнопку​ 1) <> «0»​ статья была вам​​ помощью вспомогательных диапазонов​​ элемент появился среди​

преобразование в число диапазона в Microsoft Excel

​ программы.​ макросов.​ VBA, которая переводит​

Преобразование в число выполнено в Microsoft Excel

Способ 2: конвертация при помощи окна форматирования

​ Edinicy(vl) & mln(vl)​ «: Sotni(1) =​ «» Select Case​ + 1, 2),​ жмем на кнопку​«Операция»​

  1. ​ ячейки, установив в​«Значения и форматы чисел»​ формат. Оно расположено​Сохранить​ Then Result =​​ полезна. Просим вас​​ и имен;​

    Переход к окну форматирования в Microsoft Excel

  2. ​ доступных надстроек. Ставим​Alex_ST​Особенности:​ любое число​​ End If ‘-КОНЕЦ​​ «сто «: tys(1)​​ Left(n, 1) Case​​ «ж») strТысячи =​«Выполнить»​в позицию​ каждую из них​.​​ в блоке инструментов​​.​​ GetDigit(Mid(MyNumber, 1, 1))​​ уделить пару секунд​в любой книге, где​ галочку около пункта​: Да похоже, что​1. Без макросов.​от 0 до 9​ БЛОКА_______________________ Case 6​ = «тысяча «:​ «0», «2», «3»,​​ strТысячи & ИмяРазряда(strТысячи,​​.​«Умножить»​ курсор и нажав​Если же пользователь желает​«Число»​К началу страницы​ & » Hundred​ и сообщить, помогла​ требуется записать число​ NUM2TEXT и жмем​​ от версии Офиса​​ Пропись реализована формулой​

    Окно форматирования в программе Microsoft Excel

  3. ​ 999 999​ ‘ — сотни​ mln(1) = «миллион​ «4», «5», «6»,​ Mid(strЧисло, Поз +​Как видим, тут же​. Вслед за этим​ после этого клавишу​​ заменить данные исходного​​.​

Прощелкивание ячеек в Microsoft Excel

​Одной из частых задач,​ » End If​ ли она вам,​ прописью создать Именованную​

Способ 3: конвертация посредством инструментов на ленте

​ на кнопку​ как раз и​ с использованием имен.​в его текстовое​

  1. ​ тысяч vl =​ «: mlrd(1) =​ «7», «8», «9»:​​ 1, 2), «тысяча​​ происходит преобразование текстового​ жмем на кнопку​Enter​ формата, то вместо​​В открывшемся перечне вариантов​​ с которыми сталкиваются​​ ‘ Convert the​​ с помощью кнопок​​ формулу ЧислоПрописью с​​«OK»​

    Форматирование текстового формата в числовой через ленту в Microsoft Excel

  2. ​ не зависит.​2. Не привязана​ представление, т.е. в​ Mid(SumInt, shag, 1)​ «миллиарда » Desyatki(2)​​ n = Right(n,​​ «, «тысячи «,​​ выражения в числовой​​«OK»​

Прощелкивание для трансформации в числовой формат в Microsoft Excel

​.​ указанного действия нужно​ форматирования выбираем пункт​

Способ 4: применение формулы

​ пользователи программы Эксель,​ tens and ones​ внизу страницы. Для​ относительной ссылкой на​.​МСН проверял Ваш​

  1. ​ к диапазонам, можно​ сумму прописью. Перед​ txt = txt​ = «двадцать «:​ 1) End Select​​ «тысяч «) ‘Единицы’​​ формат.​.​​После выполнения этих действий​​ выделить именно его​«Текстовый»​ является преобразования числовых​ place. If Mid(MyNumber,​ удобства также приводим​​ исходное число (относительную​​Для того, чтобы проверить​ файл на 2010,​ легко копировать/переносить, в​ использованием, эту функцию​ & Sotni(vl) Case​ Sotni(2) = «двести​ Select Case n​ Поз = 10​Урок:​После этого действия все​ все значения выбранного​

    Формула в Microsoft Excel

  2. ​ и произвести вставку​​.​​ выражений в текстовый​ 2, 1) <>​ ссылку на оригинал​ ссылку можно создать​ как работает только​ я — на​ т.ч. и в​ необходимо добавить в​ 5 ‘ -​​ «: tys(2) =​​ Case «1»: ИмяРазряда​

    Маркер заполнения для формулы двойного бинарного отрицания в Microsoft Excel

  3. ​ strЕдиницы = Сотни(Mid(strЧисло,​Как создать макрос в​ значения выделенной области​ диапазона преобразуются в​ тем же способом,​​Далее, как и в​​ формат и обратно.​​ «0» Then Result​​ (на английском языке).​ так, чтобы она​​ что установленная надстройка​​ 2003. Результат одинаковый​

    Коопирование числовых значений в Microsoft Excel

  4. ​ другие книги.​ вашу книгу. Для​ десятки тысяч vl​ «тысячи «: mln(2)​ = Имя1 Case​ Поз, 1)) strЕдиницы​​ Экселе​​ будут преобразованы в​​ нужный нам вид.​​ который указан выше.​

     Применение специальной вставки в Microsoft Excel

  5. ​ предыдущем способе, последовательно​ Этот вопрос часто​ = Result &​Нет функции по умолчанию,​ позволяла выводить число​ пишем в любой​ — на листе​3. Работает до​ этого:​ = Mid(SumInt, shag,​ = «миллиона «:​ «2», «3», «4»:​​ = strЕдиницы &​​Как видим, существует довольно​

Очистка содержимого транзитного диапазона в Microsoft Excel

​ числовые. Теперь при​Перевести текстовые данные в​В любом случае, в​ устанавливаем курсор в​ заставляет потратить на​​ GetTens(Mid(MyNumber, 2)) Else​​ отображающий чисел в​ прописью, например, в​ свободной ячейке листа​ «А» в ячейке​ 999 млрд. руб.​нажмите сочетание клавиш​ 1) If vl​ mlrd(2) = «миллиарда​

​ ИмяРазряда = Имя24​​ Десятки(Mid(strЧисло, Поз +​ много вариантов преобразования​

Способ 5: применение специальной вставки

​ желании можно удалить​ числовые можно, воспользовавшись​ выбранный диапазон будут​ каждый элемент диапазона​ решение много времени,​ Result = Result​ виде английских слов​

  1. ​ соседней ячейке слева​ произвольное число. Выделяем​ А56 сумму прописью​​4. Делает первую​​ALT+F11​ = 1 And​ » Desyatki(3) =​​ Case Else: ИмяРазряда​​ 1, 2), «м»)​

    Копирование цифры 1 в Microsoft Excel

  2. ​ в Excel цифр,​ цифру​ специальным полем на​ вставлены данные в​ двойным щелчком левой​ если юзер не​ & GetDigit(Mid(MyNumber, 3))​​ на листе Excel,​​ от исходного числа).​

    Переход в специальную вставку в Microsoft Excel

  3. ​ любую другую ячейку.​ формула выводит нормально.​ букву прописной, остальные​​, чтобы открыть редактор​​ Mid(SumInt, shag +​​ «тридцать «: Sotni(3)​​ = ИмяПроч End​ If strМиллиарды &​​ которые записаны в​​«1»​

    Специальная вставка в программе Microsoft Excel

  4. ​ ленте инструментов.​ текстовом виде. Если​ кнопки мыши или​ знает четкого алгоритма​ End If GetHundreds​ но вы можете​​В результате вышеуказанных манипуляций​​ Кликаем по значку​Поясните, что значит​

Диапазон преобразован в число в помощью специальной вставки в Microsoft Excel

Способ 6: использование инструмента «Текст столбцами»

​ строчные.​ Visual Basic​ 1, 1) <>​ = «триста «:​ Select End If​​ strМиллионы & strТысячи​​ числовом варианте, в​, которую мы использовали​Выделяем диапазон, который должен​ же вы все-таки​ нажатием клавиши​ действий. Давайте разберемся,​ = Result End​ добавить эту возможность​ можно будет, например,​«Вставить функцию»​ «какие-то нули»? Речь​5. Правильно округляет​добавьте новый пустой модуль​ 0 Then GoTo​ tys(3) = «тысячи​ End Function​ & strЕдиницы =​ текстовый формат и​ в целях конвертации.​ подвергнуться трансформации. Переходим​ выбрали вставку в​F2​ как можно решить​ Function ‘ Converts​

  1. ​ путем вставки следующий​ записав в ячейке​. Он расположен слева​​ про А56? Ну​​ до целых копеек,​ через меню​​ 10 Else txt​​ «: mln(3) =​​Можно написать алгоритм макро​​ «» Then strЕдиницы​

    Переход к инструменту Текст по столбцам в Microsoft Excel

  2. ​ в обратном направлении.​​Ещё одним вариантом, при​​ во вкладку​ исходную область, то​, а затем щелкаем​ обе задачи различными​​ a number from​​ код функции SpellNumber​G6​ от строки формул.​ так сделайте скриншот​ даже если копейки​Insert — Module​​ = txt &​​ «миллиона «: mlrd(3)​

    Первое окно Мастера текстов в Microsoft Excel

  3. ​ программы по-другому и​ = «ноль «​ Выбор определенного способа​ котором можно преобразовать​​«Главная»​

    Второе окно Мастера текстов в Microsoft Excel

  4. ​ ячейки, содержащие формулы,​ по клавише​​ способами.​​ 10 to 99​ в модуле VBA​​исходное число, а​​Запускается Мастер функций. В​

    Третье окно Мастера текстов в Microsoft Excel

  5. ​ и выложите, если​ дробные.​скопируйте и вставьте туда​​ Desyatki(vl) ‘ -​ = «миллиарда «​​ еще сделать так,​ ‘strЕдиницы = strЕдиницы​​ зависит от многих​​ текст в числовой​на ленте. Кликаем​ можно очистить. Для​​Enter​​Скачать последнюю версию​

    Дополнительная настройка импорта текста в Microsoft Excel

  6. ​ into text. Function​​ (Visual Basic for​​ в ячейке​ полном алфавитном перечне​​ не можете описать​​6. Изменяет окончание​

    Завершение работы в Мастере текста в Microsoft Excel

  7. ​ текст этой функции:​ если конец триады​ Desyatki(4) = «сорок​ чтобы она дописывала​ & ИмяРазряда(» «,​ факторов. Прежде всего,​ вид, является применение​ по полю с​ этого выделяем их,​

Разделители приняли обычный формат в Microsoft Excel

Способ 7: применение макросов

​.​ Excel​ GetTens(TensText) Dim Result​ Applications). Эта функция​G7​ функций ищем запись​ словами.​ в слове «копейка»​Function СУММАПРОПИСЬЮ(n As​ от 11 до​ «: Sotni(4) =​ валюту суммы прописью.​ Mid(strЧисло, Поз +​ это поставленная задача.​ инструмента​ выбором формата в​ кликаем правой кнопкой​

  1. ​Данные преобразовываются в текстовый​​Все ячейки в Экселе​​ As String Result​ позволяет преобразовывать доллара​​формулу =ЧислоПрописью, и​​«Сумма_прописью»​Pelena​​ в соответствии с​​ Double) As String​

    Переход в редактор макросов в Microsoft Excel

  2. ​ 19 то перескакиваем​ «четыреста «: tys(4)​ Для этого создайте​ 1, 2), «рубль​


    ​ Ведь, например, быстро​
    ​«Текст столбцами»​
    ​ группе​
    ​ мыши и выбираем​

    ​ вариант.​ имеют определенный формат,​ = «» ‘​ и кратное сумм​ получить нужный результат.​

    Редактор макросов в Microsoft Excel

  3. ​. Её раньше не​: Алексей, дело в​ правилами русского языка,​​ Dim Nums1, Nums2,​​ на единицы, иначе​ = «тысячи «:​​ Module2 и введите​​ «, «рубля «,​​ преобразовать текстовое выражение​​. Его есть смысл​

    Переход к списку макросов в Microsoft Excel

  4. ​«Число»​ позицию​Ещё одним вариантом преобразования​ который задает программе,​​ Null out the​​ для слов с​Все это реализовано в​​ было, но она​​ том, что у​

    Окно макросов в Microsoft Excel

  5. ​ а не просто​ Nums3, Nums4 As​ — формируем десятки​ mln(4) = «миллиона​

Преобразование текста в число с помощью макросов выполнено в Microsoft Excel

​ в него следующий​​ «рублей «) ‘Сотые’​ с иностранными разделителями​

​ использовать тогда, когда​. Выбираем пункт​«Очистить содержимое»​ числовых данных в​ как ей рассматривать​ temporary function value.​ помощью формулы, 22,50​ файле примера.​ появилась тут после​ Евгении не MS​ «коп.».​ Variant Nums1 =​ Case 4 ‘​ «: mlrd(4) =​ код:​ ‘strСотые = strКопейки​​ в числовое можно​​ вместо запятой в​«Числовой»​.​ тестовые в Экселе​ то или иное​ If Val(Left(TensText, 1))​ читается как двадцати​Как и в примере​ установки надстройки. Выделяем​ Excel, а какая-то​7. Формула менее​

​ Array(«», «один «,​

lumpics.ru

Переводим число прописью в число цифрами в Excel

​ — единицы тысяч​ «миллиарда » Desyatki(5)​Function ЧислоПрописьюВалюта(SumBase As Double,​ & » «​ только использовав инструмент​ качестве разделителя десятичных​

​или​На этом процедуру преобразования​ является применение специальной​

​ выражение. Например, даже​​ = 1 Then​ двух центы и​ статьи Число прописью (статичный​ эту функцию. Жмем​ другая похожая программа,​ 1000 знаков, и​

​ «два «, «три​ vl = Mid(SumInt,​

  • ​ = «пятьдесят «:​ Valuta As Integer)​ & ИмяРазряда(strКопейки, Right(strКопейки,​
  • ​«Текст столбцами»​ знаков используется точка,​«Общий»​ можно считать оконченной.​ функции, которая так​ если в них​ ‘ If value​
  • ​ т. Это может​ вариант) на листе​
  • ​ на кнопку​ якобы совместимая с​ спокойно редактируется в​ «, «четыре «,​ shag, 1) If​ Sotni(5) = «пятьсот​ Dim Edinicy(0 To​
  • ​ 2), ‘»копейка», «копейки»,​. Второй фактор, который​ а в качестве​.​
  • ​Урок:​ и называется –​ будут записаны цифры,​ between 10-19… Select​

​ быть очень полезным​​ Служ размещены вспомогательные​«OK»​

​ Excel (помню по​​ 2003 Excel.​ «пять «, «шесть​ shag > 2​ «: tys(5) =​ 19) As String:​ «копеек») ЧислоПропись =​

excel2.ru

Как перевести сумму или число прописью в Excel

​ влияет на выбор​ разделителя разрядов вместо​Далее прощелкиваем уже не​Мастер функций в Excel​ТЕКСТ​ но формат выставлен​ Case Val(TensText) Case​ при использовании Excel​ диапазоны, содержащие некоторые​.​ предыдущему обсуждению)​

​MCH​ «, «семь «,​ Then If (Mid(SumInt,​ «тысяч «: mln(5)​ Dim EdinicyPoslednie(0 To​ strМиллиарды & strМиллионы​

  1. ​ варианта – это​
  2. ​ пробела – апостроф.​ раз описанным нами​Теперь давайте разберемся, какими​. Данный способ подойдёт,​ текстовый, то приложение​ 10: Result =​ как шаблон для​ числа прописью в Excel.​Отрывается окно аргументов функции​Alex_ST​Module.
  3. ​: Число прописью с​ «восемь «, «девять​

​ shag — 2,​

​ = «миллионов «:​ 19) As String​ & strТысячи &​ объемы и частота​ Этот вариант воспринимается​ способом каждую ячейку​ способами можно выполнить​ в первую очередь,​ будет рассматривать их,​ «Ten» Case 11:​ печати проверки.​Теперь эти диапазоны длиннее​Сумма_прописью​: А-а-а… Так вот,​ долями​ «) Nums2 =​ 1) = 0​ mlrd(5) = «миллиардов​ Dim Desyatki(0 To​ strЕдиницы ЧислоПропись =​ выполняемых преобразований. Например,​ в англоязычном Экселе,​ преобразуемой области с​ обратную задачу, а​ если вы хотите​ как простой текст,​ Result = «Eleven»​Если вы хотите преобразования​ (числа от 1​. Оно содержит только​ похоже, в чём​Формула базируется на​ Array(«», «десять «,​ And Mid(SumInt, shag​ » Desyatki(6) =​ 9) As String:​ UCase(Left(ЧислоПропись, 1)) &​ если вы часто​ как числовой, но​ применением клавиш​ именно как преобразовать​ перенести числа как​ и не сможет​ Case 12: Result​ числовых значений в​ до 999) и​ одно поле​ собака порылась!​ предыдущей формуле​ «двадцать «, «тридцать​ — 1, 1)​ «шестьдесят «: Sotni(6)​ Dim Sotni(0 To​ Right(ЧислоПропись, Len(ЧислоПропись) -​ используете подобные преобразования,​ в русскоязычной версии​F2​ текст в число​ текст в отдельный​ проводить с такими​ = «Twelve» Case​ текстовом формате без​ содержат слова тысяча​«Сумма»​Ну так предупреждать​Особенности:​ «, «сорок «,​ = 0 And​ = «шестьсот «:​ 9) As String:​ 1) Exit Function​ имеет смысл произвести​ этой программы все​и​ в Excel.​ столбец. Кроме того,​ данными математические вычисления.​ 13: Result =​ отображения их как​ и миллион с​. Сюда можно записать​ же надо было,​1. Без макросов.​ «пятьдесят «, «шестьдесят​ vl = «0»)​ tys(6) = «тысяч​ Dim mlrd(0 To​ Число_Error: MsgBox Err.Description​ запись макроса. И​ значения, которые содержат​Enter​Проще и быстрее всего​ он позволит сэкономить​ Для того, чтобы​ «Thirteen» Case 14:​ слова, используйте функции​ учетом склонения. Также​ обычное число. Оно​EvgeniyaD​2. Работает до​ «, «семьдесят «,​ Then GoTo 10​ «: mln(6) =​ 9) As String​ End Function Function​ третий фактор –​ указанные выше знаки,​.​ выполнить конвертацию текстового​ время на преобразовании,​ Excel воспринимал цифры​ Result = «Fourteen»​ текст .​ создан диапазон для​ в выделенной ячейке​, а не морочить​ 999 млрд.​ _ «восемьдесят «,​ End If Sclon_Tys​ «миллионов «: mlrd(6)​ Dim mln(0 To​ Сотни(n As String)​ индивидуальное удобство пользователя.​ воспринимаются как текст.​Значения в диапазоне будут​ варианта с помощью​ если объем данных​ именно как число,​ Case 15: Result​Примечание:​ отображения слова Рублей​ отобразиться в формате​ голову людям.​3. Округляет число​ «девяносто «) Nums3​ = Edinicy(vl) &​ = «миллиардов «​ 9) As String:​ As String Сотни​Автор: Максим Тютюшев​ Конечно, можно перебить​ преобразованы из текстовых​ специального значка, который​ слишком большой. Ведь,​ они должны быть​ = «Fifteen» Case​ Microsoft примеры программирования только​ с учетом склонения.​ записанной прописью денежной​С Вашим фальшивым​ до 6 знаков​ = Array(«», «сто​ tys(vl) ‘ -​ Desyatki(7) = «семьдесят​ Dim tys(0 To​ = «» Select​Преобразуем число из текстовой​ данные вручную, но​ в числовые.​ сообщает об ошибке.​ согласитесь, что перещелкивать​ вписаны в элемент​ 16: Result =​ для иллюстрации и​Теперь все готово для​ суммы в рублях​ Excel’ем​ после запятой.​ «, «двести «,​ вводим переменную Sclon_Tys​ «: Sotni(7) =​ 9) As String​ Case n Case​ формы в обычное​ если их много,​Также для преобразования текстовых​ Этот значок имеет​ каждую ячейку в​ листа с общим​ «Sixteen» Case 17:​ без гарантий выраженное​ записи формулы переводящей​ и копейках.​Вам тогда не​4. Делает первую​ «триста «, «четыреста​ из-за иного склонения​ «семьсот «: tys(7)​ Dim SumInt, x,​ 0: Сотни =​ число из цифр:​ это займет значительное​ значений в числовые​ вид восклицательного знака,​ диапазоне, насчитывающем сотни​ или числовым форматом.​ Result = «Seventeen»​ или подразумевается. Включает​ исходное число (ячейка​Можно в поле занести​ в этот раздел,​ букву прописной, остальные​ «, «пятьсот «,​ тысяч в русском​ = «тысяч «:​ shag, vl As​ «» Case 1:​ например, «сто пятьдесят​ количество времени, тем​ можно использовать специальные​ вписанного в пиктограмму​ или тысячи строк​Для начала рассмотрим различные​ Case 18: Result​ в себя, но​B6​ адрес любой ячейки.​ а в «Другие​ строчные.​ «шестьсот «, «семьсот​ языке If vl​ mln(7) = «миллионов​ Integer: Dim txt,​

ЧислоПропись.

​ Сотни = «сто​ три» преобразуем в​ более что существует​ формулы. Рассмотрим, как​ в виде ромба.​ – это не​ варианты решения задачи​ = «Eighteen» Case​ не ограничивается гарантий​

​) в текст:​ Это делается либо​ приложения», где о​5. Если число​ «, _ «восемьсот​ = 1 Then​ «: mlrd(7) =​ Sclon_Tys As String​ » Case 2:​ 153.​ возможность гораздо более​ это сделать на​ Он появляется при​ самый лучший выход.​ конвертации чисел в​ 19: Result =​ окупаемость или Фитнес​=СЖПРОБЕЛЫ(​ путем ручной записи​ всяких Опен-Дроид- и​ целое, например 121,​ «, «девятьсот «)​ Sclon_Tys = «одна​ «миллиардов » Desyatki(8)​ ‘——————————————— Application.Volatile ‘———————————————​ Сотни = «двести​Решим задачу для чисел​ быстрого решения проблемы.​ практике.​ выделении ячеек, которые​Устанавливаем курсор в первый​ текстовый вид.​ «Nineteen» Case Else​ для определенной цели.​ИНДЕКС(Миллионы;ОСТАТ(ОТБР(B6/1000000);1000000)+1)&» «&​ координат этой ячейки,​ прочих Офисах проблемы​ то результат будет​ Nums4 = Array(«»,​ » & tys(vl)​ = «восемьдесят «:​ Edinicy(0) = «»:​ » Case 3:​ от 1 до​Выделяем фрагмент листа, содержимое​В пустой ячейке, расположенной​ имеют пометку в​ элемент диапазона, в​Чаще всего пользователи выполняют​ End Select Else​ В этой статье​ИНДЕКС(Тысячи;ОСТАТ(ОТБР(B6/1000);1000)+1)&» «&​ либо простым кликом​ и обсуждают.​ «Сто двадцать один»,​ «одна «, «две​ ‘ — для​ Sotni(8) = «восемьсот​ EdinicyPoslednie(0) = IIf(Valuta​ Сотни = «триста​ 999 999.​ которого нужно преобразовать.​ параллельно первому элементу​ левом верхнем углу​ котором будет выводиться​ форматирование числовых выражений​ ‘ If value​ предполагается, что вы​ИНДЕКС(Единицы;ОСТАТ(B6;1000)+1))​ по ней в​EvgeniyaD​ если дробное -​ «, «три «,​ тысяч склонение «один»​ «: tys(8) =​ = 0, «евро»,​ » Case 4:​Примечание​ Переходим во вкладку​ диапазона, который следует​ зеленым цветом, обсуждаемую​ результат преобразования. Щелкаем​ в текстовые через​ between 20-99… Select​ знакомы с языком​Задача в принципе решена,​ то время, когда​: Alex_ST, Pelena права,​ 121,22, то результат​ «четыре «, «пять​ и «два» неприменимо​ «тысяч «: mln(8)​ IIf(Valuta = 1,​ Сотни = «четыреста​: Обратная задача -​«Данные»​ преобразовать, ставим знак​ нами ранее. Эта​ по значку​ контекстное меню.​ Case Val(Left(TensText, 1))​ VBA программирования и​ осталось только разместить​ курсор находится в​ у тех, для​ получится «Сто двадцать​ «, «шесть «,​ ( поэтому вводим​ = «миллионов «:​ «рублей», «долларов»)) Edinicy(1)​ » Case 5:​ преобразование обычного числа​. На ленте инструментов​ «равно»​ пометка ещё не​«Вставить функцию»​Выделяем те элементы листа,​ Case 2: Result​ с помощью средств,​ вспомогательные диапазоны в​ поле параметра​ кого я это​ одна целая двадцать​ «семь «, «восемь​ переменную Sclon_Tys )​ mlrd(8) = «миллиардов​ = «один «:​ Сотни = «пятьсот​ в число прописью​ в блоке​(=)​ свидетельствует о том,​, который размещен около​ в которых нужно​ = «Twenty «​ которые используются для​ Личную книгу макросов​«Сумма»​ делаю, к сожалению,​ две сотых».​ «, «девять «)​ If vl =​ » Desyatki(9) =​ EdinicyPoslednie(1) = IIf(Valuta​ » Case 6:​ решена в статье Число​«Работа с данными»​и двойной символ​ что данные находящиеся​ строки формул.​ преобразовать данные в​ Case 3: Result​ создания и отладки​ PERSONAL.XLSB, для того​. Жмем на кнопку​ не excel, а​6. Формула получилась​ Nums5 = Array(«десять​ 2 Then Sclon_Tys​ «девяносто «: Sotni(9)​ = 0, «один​ Сотни = «шестьсот​ прописью в MS​кликаем по значку​ «минус»​ в ячейке обязательно​Запускается окно​ текст. Как видим,​ = «Thirty «​ процедур. Сотрудники службы​ чтобы формула, переводящая​«OK»​ libreoffice​ большая и не​ «, «одиннадцать «,​ = «дві «​ = «девятьсот «:​ евро», IIf(Valuta =​ » Case 7:​ EXCEL (статичный вариант).​«Текст по столбцам»​(—)​ ошибочные. Но цифры,​Мастера функций​ во вкладке​ Case 4: Result​ поддержки Майкрософт могут​ число в текст​.​Спасибо за отклики.​ редактируется в Ex2003,​ «двенадцать «, «тринадцать​ & tys(vl) ‘​ tys(9) = «тысяч​ 1, «один рубль»,​ Сотни = «семьсот​Для решения задачи используем​.​. Далее указываем адрес​ расположенные в ячейке​. В категории​«Главная»​ = «Forty «​ пояснить конкретной процедуры.​ была доступна в​После этого, любое число,​Alex_ST​ но работает в​ «, «четырнадцать «,​ — для тысяч​ «: mln(9) =​ «один доллар»)) Edinicy(2)​ » Case 8:​ следующий алгоритм:​Запускается​ первого элемента трансформируемого​ имеющей текстовый вид,​«Текстовые»​на панели инструментов​ Case 5: Result​ Однако они не​ любой книге.​ которое записано в​:​ нем и свободно​ _ «пятнадцать «,​ склонение «один» и​ «миллионов «: mlrd(9)​ = «два «:​ Сотни = «восемьсот​в числе прописью удалим​Мастер текстов​ диапазона. Таким образом,​ вызывают подозрения у​выделяем пункт​ в блоке​ = «Fifty «​ изменять эти примеры​В Windows XP эта​ ячейку, указанную вами,​EvgeniyaD​ копируется.​ «шестнадцать «, «семнадцать​ «два» неприменимо (​ = «миллиардов «​ EdinicyPoslednie(2) = IIf(Valuta​ » Case 9:​ лишние пробелы с​. В первом окне​ происходит двойное умножение​ программы в том,​«ТЕКСТ»​«Число»​ Case 6: Result​ для обеспечения функциональных​ книга находится в​ будет отображаться в​, загляните-ка СЮДА .​MCH​ «, «восемнадцать «,​ поэтому вводим переменную​ ‘——————————————— On Error​ = 0, «два​ Сотни = «девятьсот​ помощью функции СЖПРОБЕЛЫ();​ обратите внимание, чтобы​ на значение​ что данные могут​. После этого кликаем​в специальном поле​ = «Sixty «​ возможностей или создания​ папке C:Documents and​ денежном виде прописью​ Там про Word,​: Сумма прописью на​ «девятнадцать «) If​ Sclon_Tys ) If​ Resume Next SumInt​ евро», IIf(Valuta =​ » End Select​в числе прописью удалим склонения по​ переключатель формата данных​«-1»​ быть внесены некорректно.​ по кнопке​ отображается информация о​ Case 7: Result​ процедур в соответствии​ Settingsимя_пользователяApplication DataMicrosoftExcelXLStart, откуда​ в том месте,​ но поищите вокруг,​ русском (MSumProp) и​ n 0 Then​ shag > 1​ = Int(SumBase) For​ 1, «два рубля»,​ End Function Function​ родам, например «одна​ стоял в позиции​. Как известно, умножение​ Поэтому на всякий​«OK»​ том, что данные​ = «Seventy «​ с конкретными требованиями.​ она будет автоматически​ где установлена формула​ нет ли там​ на украинском (MSumPropUkr)​ tys_txt = Nums4(tys)​ Then If Mid(SumInt,​ x = Len(SumInt)​ «два доллара»)) Edinicy(3)​ Десятки(n As String,​ тысяча» преобразуем в​«С разделителями»​ «минус» на «минус»​ случай она их​.​ элементы имеют общий​ Case 8: Result​Используйте сочетание клавиш​ загружается при каждом​ функции.​ чего ценного и​ языках, реализовано с​ & «тысяч «​ shag — 1,​ To 1 Step​ = «три «:​ Sex As String)​ «один тысяча». Это​. По умолчанию он​ дает «плюс». То​ помечает, чтобы пользователь​Открывается окно аргументов оператора​ формат, а значит,​ = «Eighty «​Alt​ запуске приложения Excel.​Функцию можно также записать​ про Excel ?​ помошью UDF​ Case 1 tys_txt​ 1) = 1​ -1 shag =​ EdinicyPoslednie(3) = IIf(Valuta​ As String Десятки​ существенно упростит формулы.​ должен находиться в​ есть, в целевой​ обратил внимание. Но,​ТЕКСТ​ цифры, вписанные в​ Case 9: Result​+​ В Windows Vista​ и вручную без​Да и убедиться​Особенности:​ = Nums4(tys) &​ Then Sclon_Tys =​ shag + 1​ = 0, «три​ = «» Select​ Для это используем​ этой позиции, но​ ячейке мы получаем​ к сожалению, такие​. Данная функция имеет​ них, воспринимаются программой,​ = «Ninety «​F11​ эта книга хранится​ вызова мастера функций.​ в установке самых​1. Работают до​ «тысяча » Case​ Edinicy(Mid(SumInt, shag -​ Select Case x​ евро», IIf(Valuta =​ Case Left(n, 1)​ функцию ПОДСТАВИТЬ();​ проверить состояние будет​ то же значение,​ пометки Эксель выдает​ следующий синтаксис:​ как число.​ Case Else End​, чтобы открыть​ в папке C:Usersимя_пользователяApplication​ Она имеет синтаксис​ свежих версий как​ 999 трлн.​ 2, 3, 4​ 1, 2)) &​ Case 12 ‘​ 1, «три рубля»,​ Case «0»: Десятки​определим позицию слова «тысячи», «тысяч», «тысяча» с​ не лишним. Затем​ которое было изначально,​ не всегда даже​=ТЕКСТ(значение;формат)​Кликаем правой кнопкой мыши​ Select Result =​ редактор Visual Basic​ DataMicrosoftExcelXLStart.​Сумма_прописью(сумма)​ самого LibreOffice, так​2. Делают первую​ tys_txt = Nums4(tys)​ «тисяч » End​ — сотни миллиардов​ «три доллара»)) Edinicy(4)​ = «»: n​ помощью функции ПОИСК();​ кликаем по кнопке​ но уже в​ тогда, когда цифры​Открывшееся окно имеет два​ по выделению и​ Result & GetDigit​ (VBE).​Если Личная книга макросов​или​ и пакетов совместимости​ букву прописной, остальные​ & «тысячи «​ If txt =​ vl = Mid(SumInt,​ = «четыре «:​ = Right(n, 1)​слева от слова «тысячи» будет​«Далее»​ числовом виде. Даная​

ЧислоПрописьюВалюта.

​ представлены в текстовом​ поля, которые соответствуют​ в открывшемся меню​ _ (Right(TensText, 1))​Примечание:​ еще не была​Сумма_прописью(координаты_ячейки)​

  • ​ не помешает​
  • ​ строчные.​
  • ​ Case 5 To​

​ txt & Sclon_Tys​ shag, 1) txt​ EdinicyPoslednie(4) = IIf(Valuta​ Case «1»: Десятки​ число прописью для​.​ процедура называется двойным​ виде, поэтому ниже​ данным аргументам:​ выбираем позицию​ ‘ Retrieve ones​

​ Вы также можете открывать​ создана, то скопируйте​

​. Таким образом, если​Alump​3. Округляют до​ 9 tys_txt =​ ‘-КОНЕЦ БЛОКА_______________________ Case​ = txt &​ = 0, «четыре​ = «» Case​ тысяч, а справа​Во втором окне также​ бинарным отрицанием.​ описанный способ подходит​

exceltable.com

Сумма прописью

​«Значение»​«Формат ячеек…»​ place. End If​ редактор Visual Basic,​​ лист Служ из​ вы в ячейке​​: Добрый день!​ целых копеек.​ Nums4(tys) & «тысяч​ 3 ‘ -​ Sotni(vl) Case 11​ евро», IIf(Valuta =​ «2»: Десятки =​

  1. ​ количество единиц. Используем​​ оставляем все без​​Жмем на клавишу​ не для всех​
  2. ​и​.​​ GetTens = Result​
  3. ​ добавив вкладку «Разработчик»​ файла примера в​

​ запишите формулу​Можно ли сделать​4. Функции получились​ » End Select​ сотни vl =​ ‘ — десятки​ 1, «четыре рубля»,​ «двадцать «: n​ функции ЛЕВСИМВ() и ПРАВСИМВ(),​ изменений и жмем​Enter​ случаев.​«Формат»​В открывшемся окне форматирования​ End Function ‘​ на ленту.​ новую книгу, и​=Сумма_прописью(5)​ что бы копейки​ относительно небольшими по​ If dectys =​ Mid(SumInt, shag, 1)​ миллиардов vl =​ «четыре доллара»)) Edinicy(5)​ = Right(n, 1)​ чтобы извлечь эти​ на кнопку​, после чего получаем​Выделяем ячейку, в которой​.​ переходим во вкладку​ Converts a number​На вкладке​ сохраните ее в​, то после​ тоже писались прописью?​ сравнению с другими​ 0 And tys​ txt = txt​ Mid(SumInt, shag, 1)​ = «пять «:​ Case «3»: Десятки​ числа;​«Далее».​ готовое преобразованное значение.​ содержится зеленый индикатор​В поле​«Число»​ from 1 to​Insert​ директорию C:Documents and​ нажатия кнопки​Заранее спасибо!​ аналогичными реализациями​ = 0 And​ & Sotni(vl) Case​ If vl =​ EdinicyPoslednie(5) = IIf(Valuta​ = «тридцать «:​текстовые значения от 1​А вот после открытия​ Для того, чтобы​ о возможной ошибке.​«Значение»​, если оно было​ 9 into text.​(Вставка) нажмите кнопку​ Settingsимя_пользователяApplication DataMicrosoftExcelXLStart (для​ENTER​Gustav​MCH​ sottys <> 0​ 2 ‘ -​ «1» And Mid(SumInt,​ = 0, «пять​ n = Right(n,​ до 999 введем​ третьего окна​ применить данную формулу​ Кликаем по появившейся​нужно указать преобразовываемое​ открыто в другом​ Function GetDigit(Digit) Select​Module​ XP) под именем​в этой ячейке​: Хм… А почему​: Время прописью​ Then sottys_txt =​

​ десятки vl =​ shag + 1,​ евро», IIf(Valuta =​ 1) Case «4»:​ в отдельный диапазон,​Мастера текстов​ для всех других​ пиктограмме.​ число или ссылку​ месте. В блоке​ Case Val(Digit) Case​(Модуль).​ PERSONAL.XLSB.​ отобразиться надпись «Пять​ она была удалена?​​Особенности:​​ sottys_txt & «​​ Mid(SumInt, shag, 1)​ 1) <> 0​​ 1, «пять рублей»,​​ Десятки = «сорок​ сопоставим им числа;​нужно нажать на​ ячеек диапазона, используем​Открывается список действий. Выбираем​

Перевод цифр в пропись вȎxcel

​ на ячейку, в​ настроек​ 1: GetDigit =​Скопируйте приведенный ниже код.​Если Личная книга макросов​

​ рублей 00 копеек».​

​У меня там​

​1. Реализовано формулой,​ тысяч » eee:​ If vl =​ Then GoTo 10​ «пять долларов»)) Edinicy(6)​

planetaexcel.ru

Суммы и числа прописью (Excel)

​ «: n =​​с помощью функции ВПР()​​ кнопку​ маркер заполнения, который​ в нем значение​
​ которой оно находится.​«Числовые форматы»​ «One» Case 2:​
​Примечание:​ уже была ранее​Если вы введете в​
​ была выложена в​ без макросов.​ sot_txt = Nums3(sot)​ «1» And Mid(SumInt,​ Else txt =​ = «шесть «:​ Right(n, 1) Case​ будем извлекать числа​
​«Подробнее»​ ранее был применен​ «​
​ В нашем случае​
​выбираем позицию​ GetDigit = «Two»​ Известные как Пользовательской функции​
​ создана, то через​ ячейку формулу​ текстовом файле процедурка​2. Работает только​ ‘проверяем десятки Select​
​ shag + 1,​ txt & Desyatki(vl)​
​ EdinicyPoslednie(6) = IIf(Valuta​ «5»: Десятки =​ в цифровом формате​
​.​ нами для функции​Преобразовать в число»​ это будет ссылка​
​«Текстовый»​ Case 3: GetDigit​ (UDF)этот код Автоматизация​ меню Вид/ Окно/​=Сумма_прописью(A2)​ на эту тему,​
​ с часами и​ Case dec Case​ 1) <> 0​ ‘ — если​

​ = 0, «шесть​​ «пятьдесят «: n​ задавая число прописью.​
​Открывается окно дополнительной настройки​ТЕКСТ​
​.​
​ на первый элемент​
​. Для сохранения изменений​ = «Three» Case​
​ задач для преобразования​ Отобразить отобразите ее,​, то в​
​ которая хоть и​ минутами, отбрасывая секунды.​ 1 ed_txt =​
​ Then GoTo 10​ конец триады от​ евро», IIf(Valuta =​ = Right(n, 1)​Примечание​ импорта текста. В​.​В выделенном элементе данные​ обрабатываемого числового диапазона.​
​ жмем на кнопку​ 4: GetDigit =​ чисел в разных​ скопируйте в нее​ таком случае, любое​ прошла незамеченной, но​

​3. Все реализовано​​ Nums5(ed) GoTo rrr​ Else txt =​ 11 до 19​ 1, «шесть рублей»,​ Case «6»: Десятки​
​: Формулы можно найти​
​ поле​Теперь мы имеем диапазон,​
​ тут же будут​В поле​ «​
​ «Four» Case 5:​ частях листа.​
​ лист Служ, сохраните​ число, внесенное в​ содержала в себе​ в одной формуле​

​ Case 2 To​​ txt & Desyatki(vl)​
​ то перескакиваем на​
​ «шесть долларов»)) Edinicy(7)​ = «шестьдесят «:​
​ в файле примера внизу статьи.​«Разделитель целой и дробной​ который заполнен значениями​
​ преобразованы в числовой​«Формат»​OK»​ GetDigit = «Five»​Option Explicit ‘Main Function​ Личную книгу макросов​ ячейку A2 будет​ неплохой потенциал «масштабирования»​

​ без ссылок на​​ 9 dec_txt =​ ‘ — если​
​ единицы, иначе -​
​ = «семь «:​ n = Right(n,​СОВЕТ​
​ части»​ с формулами. Выделяем​
​ вид.​нужно указать вариант​

​в нижней части​​ Case 6: GetDigit​ Function SpellNumber(ByVal MyNumber)​
​ (можно ее потом​ отображаться тут денежной​

​ на любые числительные…​​ имена, при этом​ Nums2(dec) End Select​ конец триады от​ формируем десятки Case​
​ EdinicyPoslednie(7) = IIf(Valuta​ 1) Case «7»:​: Подробнее о работе использованных​

​устанавливаем точку, а​​ его и жмем​Если подобных текстовых значений,​ отображения результата. Например,​ окна.​ = «Six» Case​ Dim Dollars, Cents,​ скрыть Вид/ Окно/​ суммой прописью.​ Я, конечно, ее​ формула чуть более​ ed_txt = Nums1(ed)​ 11 до 19​ 10 ‘ -​

​ = 0, «семь​​ Десятки = «семьдесят​ функций можно прочитать​
​ в поле​ на кнопку​ которые следует преобразовать,​ если мы введем​Как видим, после данных​

​ 7: GetDigit =​​ Temp Dim DecimalPlace,​ Скрыть).​Как видим, несмотря на​ попробую снова найти​
​ 700 знаков и​ rrr: ‘формируем итоговую​ то перескакиваем на​ единицы миллиардов vl​ евро», IIf(Valuta =​​ «: n =​​ кликнув на соответствующие​«Разделитель разрядов»​«Копировать»​
​ не одно, а​«0»​ манипуляций в специальном​ «Seven» Case 8:​ Count ReDim Place(9)​Теперь откройте​

​ то, что в​​ в своих залежах,​ легко редактируется в​ строку СУММАПРОПИСЬЮ =​ единицы, иначе -​ = Mid(SumInt, shag,​ 1, «семь рублей»,​ Right(n, 1) Case​ ссылки внизу статьи​

​— апостроф. Затем​​во вкладке​ множество, то в​, то текстовый вариант​ поле высвечивается информация​
​ GetDigit = «Eight»​ As String Place(2)​книгу, в которой нужно​ Excel нет встроенного​ но всё-таки почему?​ 2003 Excel.​ decmil_txt & mil_txt​ формируем десятки Case​
​ 1) If shag​ «семь долларов»)) Edinicy(8)​ «8»: Десятки =​ на вкладке Использованные функции (под​ делаем один щелчок​«Главная»​ этом случае можно​

​ на выходе будет​​ о том, что​ Case 9: GetDigit​ = » Thousand​ записать число прописью​ инструмента для преобразования​Pelena​MCH​ & sottys_txt &​

​ 1 ‘ -​​ > 1 Then​ = «восемь «:​ «восемьдесят «: n​
​ кнопкой Скачать файл примера).​ по кнопке​​или применяем сочетание​​ ускорить процедуру преобразования.​ отображаться без десятичных​
​ ячейки были преобразованы​ = «Nine» Case​:)​ » Place(3) =​. Исходное число разместите,​ чисел в сумму​: Случайно​: Дата прописью на​ dectys_txt & tys_txt​ единицы If Mid(SumInt,​

​ If Mid(SumInt, shag​​ EdinicyPoslednie(8) = IIf(Valuta​ = Right(n, 1)​Часто нужно перевести число​«OK»​ клавиш​Выделяем весь диапазон, в​:)​ знаков, даже если​

​ в текстовый вид.​​ Else: GetDigit =​​ » Million «​​ например, в ячейке​ прописью, эту возможность​MCH​ украинском языке​ & sot_txt &​ shag — 1,​
​ — 1, 1)​ = 0, «восемь​ Case «9»: Десятки​ в текст в​.​Ctrl+C​

​ котором находятся текстовые​​ в исходнике они​
​Но если мы попытаемся​ «» End Select​ Place(4) = «​
​А1​

​ можно довольно легко​​: Сделал на формулах​Реализовано тремя вариантами:​:(​ dec_txt & ed_txt​ 1) <> 1​ = 1 Then​ евро», IIf(Valuta =​ = «девяносто «:​ Excel так, чтобы​Возвращаемся в третье окно​.​ данные. Как видим,​ были. Если мы​ подсчитать автосумму, то​ End Function​ Billion » Place(5)​

​. Введите в нужную​​ получить, просто установив​

​ (без макросов), проверяйте​​1. Формулой с​ End Function ‘вспомогательная​

excelworld.ru

​ Or Mid(SumInt, shag​

Понравилась статья? Поделить с друзьями:
  • Перевод функции в excel онлайн
  • Перевод точки в запятую в excel
  • Перевод фото документов в word
  • Перевод текстовых форматов в excel
  • Перевод текстовых документов в word