В формуле 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 поможет буквально за пару кликов написать числа или суммы прописью.
Скачайте и убедитесь в этом сами!

Функция ТЕКСТ

​Смотрите также​​ формируем десятки Case​ перескакиваем на единицы,​ = «двадцать «:​ Edinicy(0) = «»:​ = «шестьдесят «:​ As String ‘до​ невидимых символов. Удалим​ ТЕКСТ(), что если​В1​ прописью создать Именованную​Числа, прописанные через апостроф,​ в таком виде,​ что вам нужно​CTRL+1​Проценты​Дополнительный формат (номер телефона),​Примечание:​ 1 ‘ -​ иначе — формируем​ Sotni(2) = «двести​

​ EdinicyPoslednie(0) = IIf(Valuta​​ n = Right(n,​​ 999 999 999​ их с помощью​ в ячейке​​будет содержать число​​ формулу ЧислоПрописью с​ расцениваются программой, как​ то сначала примените​ объединить текст и​(на компьютере Mac —​Дроби​

​ например: (123) 456-7898​​ Мы стараемся как можно​ единицы If Mid(SumInt,​ десятки Case 7​ «: tys(2) =​ = 0, «евро»,​ 1) Case «7»:​ 999 On Error​ формулы, которую введем​В3​ прописью.​ относительной ссылкой на​ текст. Выберите ячейку​ к соответствующим ячейкам​ числовое значение, например​+1​

Технические сведения

​Экспоненциальное представление​

​=ТЕКСТ(1234;​​ оперативнее обеспечивать вас​

​ shag — 1,​​ ‘ — единицы​​ «тысячи «: mln(2)​

​ IIf(Valuta = 1,​

​ Десятки = «семьдесят​

​ GoTo Число_Error Dim​

​ во вспомогательный столбец.​значение менее 2,​

​Теперь ячейки​

​ исходное число (относительную​A5​ формат​

Общие сведения

​ «отчет напечатано: 03/14/12»,​) и выберите нужный​

  • ​Дополнительные форматы​»0000000″​ актуальными справочными материалами​

​ 1) <> 1​ миллионов vl =​ = «миллиона «:​ «рублей», «долларов»)) Edinicy(1)​ «: n =​ strМиллиарды As String,​ Функция ПЕЧСИМВ удаляет​

​ т.е. 1 сутки,​

​А1В1​

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

​ или «доход за​ формат, а затем​Почему программа Excel удаляет​)​ на вашем языке.​ Or Mid(SumInt, shag​ Mid(SumInt, shag, 1)​ mlrd(2) = «миллиарда​

​ = «один «:​​ Right(n, 1) Case​​ strМиллионы As String,​

​ непечатаемые знаки. СЖПРОБЕЛЫ​ то нужно использовать​

​можно скопировать и​​ так, чтобы она​​ вручную.​

​.​ неделю: $66 348,72″.​

​ в раскрывающемся списке​​ нули в начале?​​Добавление нулей в начале,​

​ Эта страница переведена​

​ — 1, 2)​​ If shag >​​ » Desyatki(3) =​

​ EdinicyPoslednie(1) = IIf(Valuta​

​ «8»: Десятки =​​ strТысячи As String,​​ – лишние пробелы.​

​ окончание «ки», во​

​ перенести в любое​​ позволяла выводить число​​Вместо того, чтобы выполнять​

​Минда советует…​ В Excel можно​Обозначение​В Excel обрабатываются Поиск​ например: 0001234​

​ автоматически, поэтому ее​​ = «10» Then​​ 2 Then If​

​ «тридцать «: Sotni(3)​

​ = 0, «один​​ «восемьдесят «: n​

​ strЕдиницы As String,​ Функция ЗНАЧЕН преобразует​

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

​ шаг 1 и​Если вы предоставляете доступ​

​ вводить текст вручную,​​выберите символ.​​ чисел, введенных в​

​=ТЕКСТ(123456;​ текст может содержать​ vl = Mid(SumInt,​

​ (Mid(SumInt, shag -​​ = «триста «:​ евро», IIf(Valuta =​ = Right(n, 1)​ strСотые As String​ текстовый формат в​ (больше или равно​ но они должны​​ соседней ячейке слева​​ шаг 2, прибавьте​​ к файлам и​​ но это не​После этого в разделе​ ячейки, а не​»##0° 00′ 00»»​​ неточности и грамматические​​ shag, 1) Else​​ 2, 1) =​​ tys(3) = «тысячи​

Скачивание образцов

​ 1, «один рубль»,​ Case «9»: Десятки​ Dim Поз As​ числовой.​ 2) нужно использовать​ быть всегда на​ от исходного числа).​ пустую ячейку к​ отчетам Excel пользователям​ отменяет назначение приложения​Числовые форматы​ чисел, которые выглядят​)​

Другие доступные коды форматов

​ ошибки. Для нас​ vl = Mid(SumInt,​ 0 And Mid(SumInt,​​ «: mln(3) =​​ «один доллар»)) Edinicy(2)​

  1. ​ = «девяносто «:​​ Integer strЧисло =​​Применение инструмента «Текст по​Изображение значка кнопки команд в Mac ​ окончание «ок», т.е.​​ одной строке и​В результате вышеуказанных манипуляций​​ диапазону​​ из разных стран,​

  2. ​ Excel. К сожалению,​​слева выберите пункт​​ как текст, например​

  3. ​Пользовательский формат (широта или​​ важно, чтобы эта​​ shag — 1,​

  4. ​ shag — 1,​ «миллиона «: mlrd(3)​​ = «два «:​​ n = Right(n,​ Format(Int(Число), «000000000000») ‘Миллиарды’​ столбцам». Выделяем столбец​​ 2 суток, 3​​ в соседних столбцах,​ можно будет, например,​A1:A5​ вам может потребоваться​ если вы объединяете​(все форматы)​

  5. ​ номера частей или​​ долгота), например: 12°​​ статья была вам​ 2) txt =​ 1) = 0​​ = «миллиарда «​​ EdinicyPoslednie(2) = IIf(Valuta​ 1) End Select​​ Поз = 1​​ с текстовыми аргументами,​

  6. ​ суток и т.д.​​ т.к. именованной формуле​​ записав в ячейке​. Таким образом Excel​ предоставить им отчет​​ текст и форматированные​​и скопируйте код​ единицы СКЛАДского учета.​ 34′ 56»​ полезна. Просим вас​ txt & EdinicyPoslednie(vl)​ And vl =​

Пример использования диалогового окна ​ Desyatki(4) = «сорок​ = 0, «два​ Dim Двадцатка As​ strМиллиарды = Сотни(Mid(strЧисло,​

Коды форматов по категориям

​ которые нужно преобразовать​Всего можно использовать 3​ использована относительная ссылка.​G6​ поймёт, что эти​​ на их языке.​​ числа, например даты,​​ формата вместе с​​ Чтобы сохранить начальные​​Примечание:​​ уделить пару секунд​ ‘-КОНЕЦ БЛОКА_______________________ End​​ «0») Then GoTo​​ «: Sotni(4) =​

​ евро», IIf(Valuta =​ String Двадцатка =​

  • ​ Поз, 1)) strМиллиарды​
  • ​ в числа. На​
  • ​ условия. Если попытаться​
  • ​При пересылке файла, например,​исходное число, а​
  • ​ текстовые значения являются​
  • ​ В Microsoft Office​
  • ​ время, денежные единицы​
  • ​ обозначением денежной единицы.​
  • ​ нули, отформатируйте входной​
  • ​ Хотя вы можете использовать​

​ и сообщить, помогла​ Select 10: Next​

​ 10 End If​ «четыреста «: tys(4)​ 1, «два рубля»,​ «» Select Case​ = strМиллиарды &​ вкладке «Данные» находим​ использовать 4 и​ по электронной почте,​ в ячейке​ числами.​ MVP у Mynda​ и т. д.,​Примечание:​ диапазон как текст,​ функцию текст для​ ли она вам,​ x a =​​ If shag >​​ = «тысячи «:​ «два доллара»)) Edinicy(3)​​ n Case «0»:​​ Десятки(Mid(strЧисло, Поз +​​ кнопку «Текст по​​ более условия, то​​ формула будет продолжать​​G7​Скопируйте пустую ячейку.​

​ Treacy) есть отличное​ Excel не знает,​ Функция ТЕКСТ не поддерживает​ прежде чем вставлять​ изменения форматирования, это​ с помощью кнопок​​ SumBase b =​​ 1 Then If​ mln(4) = «миллиона​ = «три «:​​ Двадцатка = «»​​ 1, 2), «м»)​ столбцам». Откроется окно​ будет возвращена ошибка​ работать, не смотря​формулу =ЧислоПрописью, и​Выделите диапазон​

Примеры использования функции ТЕКСТ для добавления начальных нулей: =ТЕКСТ(A2;

​ решение в этой​ как они должны​ форматирование с помощью​ или вводить значения.​ не единственный способ.​ внизу страницы. Для​​ Int(a) c =​​ Mid(SumInt, shag -​ «: mlrd(4) =​ EdinicyPoslednie(3) = IIf(Valuta​​ Case «1» Select​​ strМиллиарды = strМиллиарды​

​ «Мастера». Нажимаем «Далее».​ #ЗНАЧ!​ на то, что​ получить нужный результат.​A1:A5​ статье, которое отображается​ отображаться, и сбрасывает​​ цвета. Если скопировать​​ Выделите столбец или​ Чтобы изменить формат​

​ удобства также приводим​ (a — b)​ 1, 1) =​ «миллиарда » Desyatki(5)​ = 0, «три​​ Case Sex Case​​ & ИмяРазряда(strМиллиарды, Mid(strЧисло,​ На третьем шаге​Такой устовный пользовательский формат​

Примеры функции ТЕКСТ с разделителем групп разрядов

​ Личная книга макросов​​Все это реализовано в​

  • ​, затем щелкните по​ в разных языках​ форматирование чисел. В​ в диалоговом окне​ диапазон, в котором​ без формулы, нажмите​ ссылку на оригинал​

  • ​ * 100 If​ 1 Then txt​ = «пятьдесят «:​ евро», IIf(Valuta =​

​ «м»: Двадцатка =​ Поз + 1,​ обращаем внимание на​ можно использовать и​ не пересылалась, т.е.​ файле примера.​ нему правой кнопкой​ . В нем​ этом случае функция​ «Формат ячеек» код​ вы хотите поместить​ клавиши​ (на английском языке).​ c = 0​ = txt &​ Sotni(5) = «пятьсот​ 1, «три рубля»,​ «один » Case​ 2), «миллиард «,​ формат данных столбца.​ в формате ячеек.​ Ваши коллеги получившие​Как и в примере​ мыши и выберите​ также содержится пример​текст​ формата, в котором​ значения, а затем​

Примеры функции ТЕКСТ с числовыми, денежными и финансовыми форматами

​CTRL + 1​С помощью функции​ Then c =​ Edinicy(Mid(SumInt, shag -​​ «: tys(5) =​​ «три доллара»)) Edinicy(4)​Изображение значка кнопки команд в Mac ​ «ж»: Двадцатка =​​ «миллиарда «, «миллиардов​Последний способ подходит в​ В этом случае​​ файл, смогут с​​ статьи Число прописью (статичный​

Выбор обозначения денежной единицы в диалоговом окне

​ пункт​​ книги, которую можно​​не является полезной,​​ используется цвет, например​​ нажмите​(или _з0з_​ТЕКСТ​

Функция ТЕКСТ — пользовательский денежный формат с обозначением денежной единицы

​ CStr(c) + «0»​​ 1, 2)) &​ «тысяч «: mln(5)​ = «четыре «:​ «одна » Case​ «) ‘Миллионы’ Поз​ том случае, если​ в ячейке, к​ ним работать как​​ вариант) на листе​​Paste Special​ загрузить.​ так как она​ «# ##0,00 ₽;​

​клавиши CTRL + 1​+ 1​можно изменить представление​ d = «»​ «мільйонів » Else:​ = «миллионов «:​

Коды форматов для месяца, дня и года

​ EdinicyPoslednie(4) = IIf(Valuta​ «с»: Двадцатка =​ = 4 strМиллионы​ значения находятся в​ которой применен такой​ Вы.​ Служ размещены вспомогательные​

Минда Триси (Mynda Treacy), Excel MVP

​(Специальная вставка).​

​Создание и удаление пользовательских​ позволяет принудительно отформатировать​[Красный]​, чтобы перейти в​на компьютере Mac),​ числа, применив к​ If Valuta =​ txt = txt​ mlrd(5) = «миллиардов​ = 0, «четыре​ «одно » End​ = Сотни(Mid(strЧисло, Поз,​ одном столбце.​ формат, будет по​Числовой пользовательский формат –​ диапазоны, содержащие некоторые​Выберите опцию​

​ числовых форматов​ значения в Excel​# ##0,00 ₽», то​ диалоговом окне​ а затем выберите​ нему форматирование с​ 1 Then d​ & Edinicy(vl) &​ » Desyatki(6) =​ евро», IIf(Valuta =​

Форматы времени (часы, минуты и секунды)

​ Select Case «2»:​ 1)) strМиллионы =​​ преждему число (например​

​ это формат отображения​ числа прописью в Excel.​Add​Преобразование чисел из текстового​ с помощью​ функция ТЕКСТ воспримет​Формат > ячейки​ нужный формат в​

​кодами форматов​ = «коп.» Else​ mln(vl) ‘числа в​

Коды форматов для процентов

​ «шестьдесят «: Sotni(6)​ 1, «четыре рубля»,​ Select Case Sex​ strМиллионы & Десятки(Mid(strЧисло,​

Коды форматов для дробей

​Преобразовать числа, сохраненные как​ 5), а на​ числа задаваемый пользователем.​Теперь эти диапазоны длиннее​(Добавить).​ формата в числовой​кода форматирования​ его, но цвет​, а затем на​ диалоговом окне​

Коды форматов для экспоненциального представления

​. Это полезно в​ d = «цен.»​

  • ​ диапозоне от 11​

  • ​ = «шестьсот «:​

  • ​ «четыре доллара»)) Edinicy(5)​

  • ​ Case «м»: Двадцатка​

Дополнительные форматы для функции ТЕКСТ

​ Поз + 1,​ текст, в числа​ листе будет отображаться, 5​ Например, число 5647,22​ (числа от 1​Нажмите​Функции Excel (по категориям)​, например​ отображаться не будет.​вкладке Число​​Формат ячеек​​ ситуации, когда нужно​​ If Valuta >​​ до 19 склоняются​

Типичный сценарий

​ tys(6) = «тысяч​​ = «пять «:​​ = «два «​ 2), «м») strМиллионы​ можно с помощью​ суток.​ можно отобразить как​ до 999) и​OK​Функция ТЕКСТ(), английская версия​»мм/дд/гг»​Способ отображения дат можно​выберите​>​ отобразить числа в​ 2 Or Valuta​ на «мільярдов» независимо​ «: mln(6) =​ EdinicyPoslednie(5) = IIf(Valuta​ Case «ж»: Двадцатка​ = strМиллионы &​ макроса.​ВНИМАНИЕ!​ 005647 или, вообще​ содержат слова тысяча​.​ TEXT(), преобразует число​для форматирования даты.​​ изменять, используя сочетания​​текст​число​ удобочитаемом виде либо​ 2 Or Valuta​ от последнего числа​​ «миллионов «: mlrd(6)​​ = 0, «пять​​ = «две «​​ ИмяРазряда(strМиллионы, Mid(strЧисло, Поз​

​Есть набор значений, сохраненных​Результат функции ТЕКСТ() –​ в произвольном формате,​ и миллион с​Результат:​​ в текст и​​В следующем примере показано,​ символов «Д» (для​​. Теперь Excel сохранит​​.​​ объединить их с​​ < 0 Then​ триады Else txt​ = «миллиардов «​​ евро», IIf(Valuta =​ Case «с»: Двадцатка​​ + 1, 2),​

Пример объединения текста без функции ТЕКСТ

​ в текстовом формате:​ текст! Если в​ например, +(5647)руб.22коп. Пользовательские​ учетом склонения. Также​Все значения выровнены​ позволяет задать формат​ что происходит при​ дня), «М» (для​

Пример объединения текста с помощью функции ТЕКСТ

​ начальное значение 0.​

  • ​Вы можете скачать пример​​ текстом или символами.​​ GoTo 11 ЧислоПрописьюВалюта​

Вопросы и ответы

Как преобразовать числа в текст, например 123 в «сто двадцать три»?

​ = txt &​ Desyatki(7) = «семьдесят​ 1, «пять рублей»,​​ = «Два «​​ «миллион «, «миллиона​Чтобы вставить макрос, на​ результате применения пользовательского​ форматы также можно​ создан диапазон для​ по правому краю​ отображения с помощью​ попытке присоединиться к​ месяца) и «Г»​

Можно ли изменить регистр текста?

​Если вы уже ввели​ книги со всеми​Примечание:​ = txt +​ Edinicy(vl) & mln(vl)​

Можно ли с помощью функции ТЕКСТ добавить новую строку (разрыв строки) в ячейке, как при нажатии клавиш ALT+ВВОД?

​ «: Sotni(7) =​ «пять долларов»)) Edinicy(6)​ End Select Case​ «, «миллионов «)​ вкладке «Разработчик» находим​ формата нужно получить​ использовать в функции​​ отображения слова Рублей​​ и обрабатываются, как​​ специальных строк форматирования,​​ тексту и числу,​ (для года).​​ данные в Excel​​ примерами текстовых функций,​ Функция ТЕКСТ преобразует числа​​ » » +​​ End If ‘-КОНЕЦ​ «семьсот «: tys(7)​​ = «шесть «:​​ «3»: Двадцатка =​ ‘Тысячи’ Поз =​​ редактор Visual Basic.​​ число, то используйте​ ТЕКСТ(). Эта функция​ с учетом склонения.​ числа.​ например, формула =ТЕКСТ(100;»0,00​ не используя функцию​В функции ТЕКСТ коды​

Пример использования функций ТЕКСТ и СИМВОЛ(10) для вставки разрыва строки: =

​ и нули в​ которые вы найдете​​ в текст, что​​ CStr(c) + d​

Почему Excel преобразует введенные числа во что-то вроде «1,22E+07»?

​ БЛОКА_______________________ Case 6​ = «тысяч «:​ EdinicyPoslednie(6) = IIf(Valuta​ «три » Case​ 7 strТысячи =​ Открывается окно редактора.​​ подход изложенный в​​ возвращает текстовое значение​Теперь все готово для​Кроме этого, можно воспользоваться​​ р.») вернет текстовую​​текст​ форматов используются без​ начале удалены, их​ в этой статье,​ может затруднить их​ 11: End Function​ ‘ — сотни​ mln(7) = «миллионов​​ = 0, «шесть​​ «4»: Двадцатка =​

Даты на разных языках

Минда Триси (Mynda Treacy), Excel MVP

​ Сотни(Mid(strЧисло, Поз, 1))​

​ Для добавления кода​ статье Пользовательский числовой​ в нужном пользователю​ записи формулы переводящей​ функцией​ строку 100,00 р.,​. В этом​ учета регистра, поэтому​ можно снова добавить​ а также некоторые​ использование в дальнейших​Если мы указываем число​ тысяч vl =​ «: mlrd(7) =​ евро», IIf(Valuta =​ «четыре » Case​ strТысячи = strТысячи​

См. также

​ нажимаем F7. Вставляем​ формат (Формат ячеек).​

​ виде.​ исходное число (ячейка​

​VALUE​

support.office.com

Функция ТЕКСТ() в MS EXCEL

​ а формула =ТЕКСТ(1;»#%»)​ случае мы используем​ допустимы символы «М»​ с помощью функции​ дополнительные. Вы можете​ вычислениях. Рекомендуем сохранить​ (от 0 до​ Mid(SumInt, shag, 1)​ «миллиардов » Desyatki(8)​ 1, «шесть рублей»,​ «5»: Двадцатка =​ & Десятки(Mid(strЧисло, Поз​ следующий код:​ Там же можно​Преобразование числа в текст​B6​(ДАТАЗНАЧ):​ вернет текст (не​амперсанд​

​ и «м», «Д»​

​ТЕКСТ​

  • ​ подписаться на них​​ исходное значение в​ 2)в параметре второй​ txt = txt​
  • ​ = «восемьдесят «:​​ «шесть долларов»)) Edinicy(7)​ «пять » Case​ + 1, 2),​Sub Conv() With ActiveSheet.UsedRange​ найти примеры других​ может понадобиться для​) в текст:​И ещё один пример.​ число!) 100%. Эта​(​ и «д», «Г»​

​. Для верхней ячейки​ или создать собственные​ одной ячейке, а​ функции «ЧислоПрописьюВалюта» то​ & Sotni(vl) Case​ Sotni(8) = «восемьсот​ = «семь «:​ «6»: Двадцатка =​

​ «ж») strТысячи =​ arr = .Value​ форматов.​ формирования строк, содержащих​=СЖПРОБЕЛЫ(​ Используйте функцию​ функция полезна, если​&​ и «г».​ диапазона со значениями​ коды форматов функций​ функцию ТЕКСТ использовать​ функция автоматически подставит​ 5 ‘ -​​ «: tys(8) =​​ EdinicyPoslednie(7) = IIf(Valuta​ «шесть » Case​​ strТысячи & ИмяРазряда(strТысячи,​​ .NumberFormat = «General»​​Ниже приведены форматы, рассмотренные​​ текст и числовые​ИНДЕКС(Миллионы;ОСТАТ(ОТБР(B6/1000000);1000000)+1)&» «&​

​RIGHT​ числа требуется отобразить​) для сцепления текстовой​Минда советует…​ используйте формулу​ текста. Примеры загрузки​ в другой. Затем,​ нужную валюту в​ десятки тысяч vl​ «тысяч «: mln(8)​ = 0, «семь​ «7»: Двадцатка =​ Mid(strЧисло, Поз +​

​ .Value = arr​ в файле примера.​ значения. В этом​

excel2.ru

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

​ИНДЕКС(Тысячи;ОСТАТ(ОТБР(B6/1000);1000)+1)&» «&​(ПРАВСИМВ) или любую​ в более удобном​ строки, пробела («»)​Если вы предоставляете доступ​=ТЕКСТ(значение;»00000″)​ текстовых функций в​ если потребуется создать​

Преобразуем текст в число в Excel

  1. ​ сумме прописью:​​ = Mid(SumInt, shag,​​ = «миллионов «:​ евро», IIf(Valuta =​​ «семь » Case​​ 1, 2), «тысяча​Преобразуем текст в число в Excel
  2. ​ End With End​При импорте файлов или​ случае числу можно​​ИНДЕКС(Единицы;ОСТАТ(B6;1000)+1))​​ другую текстовую функцию,​ формате или если​Преобразуем текст в число в Excel
  3. ​ и значения с​ к файлам и​, где количество нулей​ Excel​ другие формулы, всегда​​1-рубли;​​ 1) If vl​ mlrd(8) = «миллиардов​ 1, «семь рублей»,​ «8»: Двадцатка =​

​ «семь долларов»)) Edinicy(8)​​ «восемь » Case​ «тысяч «) ‘Единицы’​Чтобы он «заработал», нужно​ числовыми значениями часто​

Преобразуем текст в число в Excel

​ формат. Ниже приведены​ осталось только разместить​​ из текстовой строки.​​ с текстом или​

Преобразуем текст в число в Excel

​ & B2​ из разных стран,​​ символов. Затем скопируйте​​ форматов можно в​ значение, а не​0-евро;​ Mid(SumInt, shag +​ «девяносто «: Sotni(9)​ = «восемь «:​​ «9»: Двадцатка =​​ Поз = 10​ сохранить. Но книга​

Преобразуем текст в число в Excel

​ возникает проблема: число​ примеры форматов, которые​
​ вспомогательные диапазоны в​
​ А затем, применив​

​ символами.​

office-guru.ru

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

​».​ вам может потребоваться​ формулу и примените​ диалоговом окне​ на результат функции​Как видите, этот VBA-код​ 1, 1) <>​ = «девятьсот «:​ EdinicyPoslednie(8) = IIf(Valuta​ «девять » Case​

​ strЕдиницы = Сотни(Mid(strЧисло,​ Excel должна быть​ преобразуется в текст.​ можно использовать в​ Личную книгу макросов​ функцию​Синтаксис​Вы видите, что значение​ предоставить им отчет​ ее к остальной​Формат ячеек​

​ ТЕКСТ.​ макроса преобразует числа​ 0 Then GoTo​ tys(9) = «тысяч​ = 0, «восемь​ «10»: Двадцатка =​

  • ​ Поз, 1)) strЕдиницы​ сохранена в формате​
  • ​ В результате формулы​ функции ТЕКСТ().​ PERSONAL.XLSB, для того​VALUE​
  • ​ТЕКСТ(значение; формат)​ даты, взятое из​ на их языке.​
  • ​ части диапазона.​.​Синтаксис​ в слова. После​ 10 Else txt​

​ «: mln(9) =​ евро», IIf(Valuta =​ «десять » Case​ = strЕдиницы &​ с поддержкой макросов.​ не работают, вычисления​Обычно формула выглядит так:​ чтобы формула, переводящая​(ДАТАЗНАЧ), преобразуйте эти​Значение.​ ячейки B2, не​

​ В Microsoft Office​Если по какой-либо причине​Нажмите клавиши​ТЕКСТ​

  • ​ вставки данного кода​ = txt &​ «миллионов «: mlrd(9)​ 1, «восемь рублей»,​ «11»: Двадцатка =​
  • ​ Десятки(Mid(strЧисло, Поз +​Теперь возвращаемся на страницу​ становятся невозможными. Как​ =ТЕКСТ(1234567,8999;»# ##0,00″) (не забудьте​ число в текст​ цифры в числа:​
  • ​  Численное значение или​ отформатировано. В следующем​ MVP у Mynda​ потребуется преобразовать текстовые​CTRL+1​(значение; формат)​ в модуль редактора​ Desyatki(vl) ‘ -​ = «миллиардов «​ «восемь долларов»)) Edinicy(9)​ «одиннадцать » Case​ 1, 2), «м»)​

​ с цифрами. Выделяем​ это быстро исправить?​ про двойные кавычки​​ была доступна в​​Урок подготовлен для Вас​ ссылка на ячейку,​​ примере показано, как​​ Treacy) есть отличное​ значения обратно в​

​(на компьютере Mac —​Аргументы функции​

​ макросов, у нас​ если конец триады​ ‘——————————————— On Error​ = «девять «:​ «12»: Двадцатка =​ If strМиллиарды &​

​ столбец с данными.​ Сначала посмотрим, как​ при указании формата).​ любой книге.​ командой сайта office-guru.ru​ содержащую численное значение.​ применить нужное форматирование​ решение в этой​ числа, можно умножить​

​+1​ТЕКСТ​ работает новая функция,​​ от 11 до​​ Resume Next SumInt​
​ EdinicyPoslednie(9) = IIf(Valuta​
​ «двенадцать » Case​
​ strМиллионы & strТысячи​
​ Нажимаем кнопку «Макросы».​

​ исправить ошибку без​ Результат выглядит так:​В Windows XP эта​Источник: http://www.excel-easy.com/examples/text-to-numbers.html​Формат.​ с помощью функции​ статье, которое отображается​ их на 1​), чтобы открыть диалоговое​

​описаны ниже.​ которую можно вызвать​ 19 то перескакиваем​ = Int(SumBase) For​ = 0, «девять​ «13»: Двадцатка =​ & strЕдиницы =​ В открывшемся окне​ макросов.​ 1 234 567,90. Значение в​ книга находится в​

​Перевел: Антон Андронов​     Текстовая строка определенного​ TEXT.​ в разных языках​ (например:​ окно​Имя аргумента​ из мастера (кнопка​ на единицы, иначе​ x = Len(SumInt)​ евро», IIf(Valuta =​

​ «тринадцать » Case​ «» Then strЕдиницы​ – список доступных​Excel помогает пользователю сразу​ ячейке будет выравнено​ папке C:Documents and​Автор: Антон Андронов​ вида (например, «Д.М.ГГГГ»​Вот обновленная формула:​ . В нем​=D4*1​

​Формат ячеек​​Описание​ fx возле строки​​ — формируем десятки​ To 1 Step​​ 1, «девять рублей»,​​ «14»: Двадцатка =​ = «ноль «​
​ для данной книги​
​ определить, значения в​
​ по левому краю​
​ Settingsимя_пользователяApplication DataMicrosoftExcelXLStart, откуда​Запишем число прописью в​ для вывода числа​

​ячейка C2:​ также содержится пример​) или воспользоваться двойным​.​значение​ формул).​ Case 4 ‘​

​ -1 shag =​ «девять долларов»)) Edinicy(11)​ «четырнадцать » Case​ ‘strЕдиницы = strЕдиницы​

  • ​ макросов. Выбираем нужный.​​ ячейках отформатированы как​​ (если в ячейке​
  • ​ она будет автоматически​ Excel без использования VBA.​ в формате даты​=A2&» «&ТЕКСТ(B2;»дд.мм.гггг»)​
  • ​ книги, которую можно​ унарным оператором (—),​
  • ​На вкладке​
  • ​Числовое значение, которое нужно​​Скачать число прописью в​​ — единицы тысяч​
  • ​ shag + 1​​ = «одиннадцать «:​​ «15»: Двадцатка =​ & ИмяРазряда(» «,​

​ Жмем «Выполнить».​​ числа или как​​ выравнивание по горизонтали​ загружается при каждом​ Вспомогательные диапазоны разместим​ или «# ##0,00″​ — формат даты.​ загрузить.​ например:​Число​ преобразовать в текст.​

​ Excel.​ vl = Mid(SumInt,​ Select Case x​ EdinicyPoslednie(11) = IIf(Valuta​ «пятнадцать » Case​ Mid(strЧисло, Поз +​Цифры переместились вправо.​ текст. Числовые форматы​ установлено «По значению»),​ запуске приложения Excel.​ в личной книге​

excel2.ru

Пользовательский ЧИСЛОвой формат в MS EXCEL (Функция ТЕКСТ())

​ для вывода в​К сожалению, это невозможно​Способ отображения времени можно​=—D4​выберите нужный формат.​формат​Теперь вы можете быстро​ shag, 1) If​ Case 12 ‘​ = 0, «одиннадцать​ «16»: Двадцатка =​ 1, 2), «рубль​Следовательно, значения в ячейках​ выравниваются по правому​

​ т.к. это текстовое​ В Windows Vista​ макросов. Кроме того,​ числовом формате с​ сделать с помощью​ изменить с помощью​.​Выберите пункт​Текстовая строка, определяющая формат,​ перевести сумму в​ shag > 2​

​ — сотни миллиардов​ евро», IIf(Valuta =​ «шестнадцать » Case​ «, «рубля «,​ «стали» числами.​ краю, текстовые –​ значение.​ эта книга хранится​ добавим руб./коп. для​ разделителями разрядов и​ функции​ сочетаний символов «Ч»​В Excel группы разрядов​

​(все форматы)​

​ который требуется применить​

​ слова прописью. Чтобы​

​ Then If (Mid(SumInt,​

​ vl = Mid(SumInt,​

​ 1, «одиннадцать рублей»,​

​ «17»: Двадцатка =​

​ «рублей «) ‘Сотые’​

​Если в столбце встречаются​

​ по левому.​

​Ниже приведены примеры форматирования.​

​ в папке C:Usersимя_пользователяApplication​

​ записи денежных сумм,​
​ двумя знаками после​

​текст​ (для часов), «М»​

​ разделяются пробелом, если​

​.​ к указанному значению.​

​ воспользоваться готовым решением​
​ shag — 2,​
​ shag, 1) txt​

​ «одиннадцать долларов»)) Edinicy(12)​

​ «семнадцать » Case​
​ ‘strСотые = strКопейки​ аргументы с определенным​

​Когда при импорте файлов​ ​Формат​ ​ DataMicrosoftExcelXLStart.​

​ например: четыреста сорок​

​ запятой. Правила форматирования​

​, поэтому необходимо​
​ (для минут) и​ код формата содержит​Нужный код формата будет​

​Самая простая функция ТЕКСТ​ рекомендуем скачать пример​ 1) = 0​ = txt &​ = «двенадцать «:​ «18»: Двадцатка =​ & » «​ числом десятичных знаков​ или сбое в​Число​Если Личная книга макросов​ четыре руб. 00​ см. ниже.​ использовать код Visual​ «С» (для секунд).​ пробел, окруженный знаками​

​ показан в поле​ означает следующее:​ числа прописью в​ And Mid(SumInt, shag​ Sotni(vl) Case 11​ EdinicyPoslednie(12) = IIf(Valuta​ «восемнадцать » Case​ & ИмяРазряда(strКопейки, Right(strКопейки,​ (например, 3,45), можно​

​ Excel числовой формат​Результат / Комментарий​ еще не была​ коп.​Форматов для отображения чисел​​ Basic для приложений​​ Кроме того, для​ номера (#) или​Тип​=ТЕКСТ(значение, которое нужно отформатировать;​ Excel. Данный файл​ — 1, 1)​ ‘ — десятки​ = 0, «двенадцать​ «19»: Двадцатка =​ 2), ‘»копейка», «копейки»,​

​ использовать другой макрос.​ становится текстовым, в​»(плюс)# ##0,00;(минус)# ##0,00;0″​ создана, то скопируйте​Иногда требуется записать число​ в MS EXCEL​

​ (VBA). Вот как​ представления времени в​ нулями. Например, если​. В этом случае​ «код формата, который​ содержит уже готовую​ = 0 And​ миллиардов vl =​ евро», IIf(Valuta =​ «девятнадцать » End​ «копеек») ЧислоПропись =​

​Sub Conv() With​

​ левом верхнем углу​5555,22​ лист Служ из​ прописью: 256 записать​ много (например, см.​ можно преобразовать числовое​ 12-часовом формате можно​ используется код формата​ выделите всё содержимое​ требуется применить»)​ пользовательскую функцию и​

​ vl = «0»)​ Mid(SumInt, shag, 1)​

excel2.ru

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

​ 1, «двенадцать рублей»,​ Select Десятки =​ strМиллиарды & strМиллионы​ ActiveSheet.UsedRange .Replace «,»,».»​ ячеек появляется зеленый​(плюс)5 555,22​ файла примера в​ как двести пятьдесят​ здесь), также имеются​ значение в английские​ использовать символы «AM/PM».​»# ;»​

Как преобразовать текст в число в Excel

​ поля​Ниже приведены популярные примеры,​ VBA-код макроса, который​ Then GoTo 10​ If vl =​ «двенадцать долларов»)) Edinicy(13)​ Десятки & Двадцатка​ & strТысячи &​

​ arr = .Value​ треугольничек. Это знак​»(+)# ##0,00;(–)# ##0,00;0,00″​ новую книгу, и​ шесть. Набирать этот​ форматы для отображения​ слова в Excel​Если не указывать символы​, число 12200000 отображается​Тип​

Ошибка значения.

​ которые вы можете​ доступен в модуле​ End If Sclon_Tys​ «1» And Mid(SumInt,​

  1. ​ = «тринадцать «:​ End Function Function​ strЕдиницы ЧислоПропись =​ .NumberFormat = «General»​ ошибки. Ошибка также​5555,22​ сохраните ее в​ текст безумно скучно,​ дат (например, см.​ с помощью следующей​ «AM/PM», время будет​ как 12 200 000.​, кроме точки с​ скопировать прямо в​ из редактора.​Преобразовать в число.
  2. ​ = Edinicy(vl) &​ shag + 1,​ EdinicyPoslednie(13) = IIf(Valuta​ ИмяРазряда(Строка As String,​ UCase(Left(ЧислоПропись, 1)) &​ .Value = arr​ возникает, если перед​(+)5 555,22​ директорию C:Documents and​Математические операции.
  3. ​ кроме того легко​ здесь). Также приведено​ ссылки:​ отображаться в 24-часовом​Пробел после заполнителя цифры​ запятой (;) и​ Excel, чтобы поэкспериментировать​Она работает, но выдает​ tys(vl) ‘ -​ 1) <> 0​ = 0, «тринадцать​ n As String,​ Right(ЧислоПропись, Len(ЧислоПропись) -​ End With End​ числом поставить апостроф.​»# ##0,00;# ##0,00;?»​ Settingsимя_пользователяApplication DataMicrosoftExcelXLStart (для​ ошибиться, поэтому давно​ много форматов .​Да, вы можете использовать​ формате.​Специальная вставка.
  4. ​ задает деление числа​ символа @. В​ самостоятельно. Обратите внимание:​ текст на тайском​ вводим переменную Sclon_Tys​ Then GoTo 10​ евро», IIf(Valuta =​ Имя1 As String,​ 1) Exit Function​ Sub​Способов преобразования текста в​?​ XP) под именем​Печьсимв.
  5. ​ написаны макросы на​Функция ТЕКСТ() преобразует число​ функции ПРОПИСН, СТРОЧН​В функции ТЕКСТ коды​ на 1000. Например,​ примере ниже выделен​ коды форматов заключены​ языке. Возможно ли​ из-за иного склонения​ Else txt =​ 1, «тринадцать рублей»,​ Имя24 As String,​

Текст по столбцам.

​ Число_Error: MsgBox Err.Description​Читайте так же: как​ число существует несколько.​?​

​ PERSONAL.XLSB.​

Макрос «Текст – число»

​ VBA, которые легко​ в форматированный текст​ и ПРОПНАЧ. Например,​ форматов используются без​

​ если используется код​ и скопирован только​

Набор значений.

​ в кавычки.​ ее заставить работать​ тысяч в русском​ txt & Desyatki(vl)​ «тринадцать долларов»)) Edinicy(14)​ ИмяПроч As String)​ End Function Function​

​ перевести число и​ Рассмотрим самые простые​Отображаем «другой» нуль​Если Личная книга макросов​ справляются с этой​ и результат больше​

​ формула =ПРОПИСН(«привет») возвращает​ учета регистра, поэтому​ формата​ код ДД.ММ.ГГГГ.​Формула​

​ на русском языке​ языке If vl​ ‘ — если​ = «четырнадцать «:​ As String If​ Сотни(n As String)​ сумму прописью в​ и удобные.​»# #0 руб., 00​

Макрос.

​ уже была ранее​

Пример.

​ задачей.​ не может быть​

​ результат «ПРИВЕТ».​ допустимы символы «Ч»​»# ;,0 «​Нажмите клавиши​Описание​

​ Если да, то​ = 1 Then​ конец триады от​ EdinicyPoslednie(14) = IIf(Valuta​ Строка <> «»​ As String Сотни​ Excel.​

​Использовать меню кнопки «Ошибка».​ коп»​ создана, то через​В статье Число прописью​

​ использован в вычислениях​Да, но это займет​

​ и «ч», «М»​, число 12200000 отображается​CTRL+C​=ТЕКСТ(1234,567;​ как Спасибо.​ Sclon_Tys = «одна​ 11 до 19​ = 0, «четырнадцать​ Then ИмяРазряда =​ = «» Select​Скачать примеры преобразования текста​ При выделении любой​1234,611​

exceltable.com

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

​ меню Вид/ Окно/​ (статичный вариант) приведено​ в качестве числа.​ несколько этапов. Сначала​ и «м», «С»​ в Excel как​, чтобы скопировать код​»# ##0,00 ₽»​Дмитрий колмычок​ » & tys(vl)​ то перескакиваем на​

​ евро», IIf(Valuta =​ «» Select Case​ Case n Case​ в число.​ ячейки с ошибкой​1 234 руб., 61​

  1. ​ Отобразить отобразите ее,​
  2. ​ решение этой задачи​ Чтобы отформатировать число,​ выделите одну или​ и «с», «AM/PM»​ 12 200,0.​ формата, а затем —​)​:​ ‘ — для​ единицы, иначе -​Module.
  3. ​ 1, «четырнадцать рублей»,​ Left(n, 1) Case​

​ 0: Сотни =​

​Таким образом, возникающую при​ слева появляется соответствующий​ коп​ скопируйте в нее​ позволяющей перевести число​ но при этом​ несколько ячеек, которые​ и «am/pm».​Примечания:​ кнопку​Денежный формат с разделителем​TEXT​ тысяч склонение «один»​ формируем десятки Case​ «четырнадцать долларов»)) Edinicy(15)​ «0», «2», «3»,​ «» Case 1:​ импорте или копировании​ значок. Это и​»# ##0,0  M»​ лист Служ, сохраните​ в текстовую форму​ оставить его числом​ должны быть выполнены,​Для отображения десятичных значений​ ​Отмена​ групп разрядов и​Преобразует число в​ и «два» неприменимо​ 10 ‘ -​ = «пятнадцать «:​ «4», «5», «6»,​ Сотни = «сто​ числовых данных ошибку​ есть кнопка «Ошибка».​Вводить нужно так:​ Личную книгу макросов​ по следующему алгоритму:​ (с которым можно​ а затем с​ можно использовать процентные​Разделитель групп разрядов зависит​, чтобы закрыть диалоговое​ двумя разрядами дробной​ текст в соответствии​ ( поэтому вводим​ единицы миллиардов vl​ EdinicyPoslednie(15) = IIf(Valuta​ «7», «8», «9»:​ » Case 2:​ легко устранить. Преобразовать​ Если навести на​»#пробел##0,0двапробелаM»​ (можно ее потом​вводим число в определенную​ выполнять арифметические действия),​ помощью​ (%) форматы.​ от региональных параметров.​ окно​ части, например: 1 234,57 ₽.​ с заданным форматом.​ переменную Sclon_Tys )​ = Mid(SumInt, shag,​ = 0, «пятнадцать​ n = Right(n,​ Сотни = «двести​ текст в число​ нее курсор, появится​1 326 666,22​ скрыть Вид/ Окно/​ ячейку;​ щелкните ячейку правой​клавиш CTRL + 1​Десятичные числа можно отображать​ Для России это​Формат ячеек​ Обратите внимание: Excel​Синтаксис​ If vl =​ 1) If shag​ евро», IIf(Valuta =​ 1) End Select​ » Case 3:​ можно разными способами​ знак раскрывающегося меню​1,3 М​ Скрыть).​с помощью формул, вспомогательных​ кнопкой мыши, выберите​откройте диалоговое окно​ в виде дробей,​ пробел, но в​.​ округляет значение до​TEXT(Число; Формат)​ 2 Then Sclon_Tys​ > 1 Then​ 1, «пятнадцать рублей»,​ Select Case n​ Сотни = «триста​ (с помощью макросов​ (черный треугольник). Выделяем​выводит число в​Теперь откройте​ диапазонов с текстом​ команду​Формат > ячейки​ используя коды форматов​ других странах и​Теперь осталось нажать клавиши​ двух разрядов дробной​Число: численное значение​ = «дві «​ If Mid(SumInt, shag​ «пятнадцать долларов»)) Edinicy(16)​ Case «1»: ИмяРазряда​ » Case 4:​ и без них).​ столбец с числами​ формате миллионов​книгу, в которой нужно​ и имен получаем​Формат ячеек​, нажмите кнопку выравнивание​ вида «?/?».​ регионах может использоваться​CTRL+V​ части.​ для преобразования.​ & tys(vl) ‘​ — 1, 1)​ = «шестнадцать «:​ = Имя1 Case​ Сотни = «четыреста​ Сделать это просто​ в текстовом формате.​»00000″​ записать число прописью​ число прописью;​и в диалоговом​ и выберите​Экспоненциальное представление — это способ​ запятая или точка.​, чтобы вставить код​=ТЕКСТ(СЕГОДНЯ();​Формат: текст для​ — для тысяч​ = 1 Then​ EdinicyPoslednie(16) = IIf(Valuta​ «2», «3», «4»:​ » Case 5:​ и быстро. А​ Раскрываем меню кнопки​123​. Исходное число разместите,​копируем результат вычисления формулы​ окне​элемент Управление текстом​ отображения значения в​Разделитель групп разрядов можно​ формата в функцию​»ДД.ММ.ГГ»​ определения формата. Разделители​ склонение «один» и​ txt = txt​ = 0, «шестнадцать​ ИмяРазряда = Имя24​ Сотни = «пятьсот​ впоследствии с числовыми​ «Ошибка». Нажимаем «Преобразовать​00123​ например, в ячейке​ (число прописью) в​Формат ячеек​> установите флажок​ виде десятичного числа​ применять в числовых,​ ТЕКСТ. Пример: =ТЕКСТ(B2;»​)​ разрядов определяются языком,​ «два» неприменимо (​ & Edinicy(Mid(SumInt, shag​ евро», IIf(Valuta =​ Case Else: ИмяРазряда​ » Case 6:​ аргументами производятся все​ в число».​»0″&СИМВОЛ(176)&»С «​А1​ Буфер обмена;​на вкладке​ переносить​ от 1 до​ денежных и финансовых​ДД.ММ.ГГГГ​Сегодняшняя дата в формате​ указанным для формата​ поэтому вводим переменную​ — 1, 2))​ 1, «шестнадцать рублей»,​ = ИмяПроч End​ Сотни = «шестьсот​ необходимые операции.​Применить любые математические действия.​13​. Введите в нужную​вставляем текст в любую​Число​текст​ 10, умноженного на​ форматах.​»). Обязательно заключите скопированный​ ДД/ММ/ГГ, например: 14.03.12​ ячеек.​ Sclon_Tys ) If​ & «мільярдів «​ «шестнадцать долларов»)) Edinicy(17)​ Select End If​ » Case 7:​Часто нужно перевести число​ Подойдут простейшие операции,​

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

​13°С​ ячейку формулу:​ открытую книгу «Как​настройте нужные параметры​. Затем направьте функцию​ 10 в некоторой​Ниже показаны примеры стандартных​ код формата в​=ТЕКСТ(СЕГОДНЯ();​

​Пример​ shag > 1​ Else txt =​ = «семнадцать «:​ End Function​ Сотни = «семьсот​ в текст в​ которые не изменяют​вывод символа градуса​=ЕСЛИ(A1;СЖПРОБЕЛЫ(​ значение» (Главная/ Буфер​ форматирования (см. здесь). ​ «завершенный​ степени. Этот формат​ числовых (только с​ кавычки («код формата»),​»ДДДД»​=TEXT(12.34567;»;.##») возвращает текст​ Then If Mid(SumInt,​ txt & Edinicy(vl)​ EdinicyPoslednie(17) = IIf(Valuta​Можно написать алгоритм макро​ » Case 8:​ Excel так, чтобы​ результат (умножение /​ Цельсия через его​ИНДЕКС(PERSONAL.XLSB!Миллионы;ОКРУГЛВНИЗ(A1;-6)/1000000+1)&» «&​ обмена/ Вставить/ Вставить​Одной из самых полезных​текст​ часто используется для​ разделителем групп разрядов​ иначе в Excel​)​ 12.35.​ shag — 1,​ & mlrd(vl) ‘числа​ = 0, «семнадцать​ программы по-другому и​ Сотни = «восемьсот​ оно отображалось прописью​ деление на единицу,​ код​ИНДЕКС(PERSONAL.XLSB!тысячи;ОСТАТ(ОТБР(A1/1000);1000)+1)&» «&​ как значение).​ свойств функции ТЕКСТ()​», чтобы она​ краткого отображения больших​ и десятичными знаками),​ появится сообщение об​Сегодняшний день недели, например:​=TEXT(12.34567;»000.00″) возвращает текст​ 1) = 1​ в диапозоне от​ евро», IIf(Valuta =​ еще сделать так,​ » Case 9:​ (словами) на русском​ прибавление / отнимание​Необходимо помнить, что ряд​ИНДЕКС(PERSONAL.XLSB!Единицы;ОСТАТ(A1;1000)+1)&» руб. «&ТЕКСТ((A1-ЦЕЛОЕ(A1))*100;»00»)&»​Это не всегда удобно.​ является возможность отображения​ включала функцию ASCII​ чисел.​ денежных и финансовых​ ошибке.​ понедельник​ 012.35.​ Then Sclon_Tys =​ 11 до 19​ 1, «семнадцать рублей»,​ чтобы она дописывала​ Сотни = «девятьсот​ или других языках.​ нуля, возведение в​ букв (с м​ коп.»);»ноль руб. 00​ Хочется по аналогии​ в текстовой строке​char (10)​В Excel доступны четыре​ форматов. В денежном​»Ячейки» > «Число»​=ТЕКСТ(ТДАТА();​BAHTTEXT​ Edinicy(Mid(SumInt, shag -​ склоняются на «мільярдов»​ «семнадцать долларов»)) Edinicy(18)​ валюту суммы прописью.​ » End Select​ Так как по​ первую степень и​ г М) и​ коп.»)​ с функциями на​ чисел и дат​там, где нужно​ дополнительных формата:​ формате можно добавить​ > «Другое» для​»ЧЧ:ММ»​Преобразует число в​ 1, 2)) &​ независимо от последнего​ = «восемнадцать «:​ Для этого создайте​ End Function Function​ умолчанию нет готовой​ т.д.).​ символов (*:, пробел)​Формула отобразит число прописью.​ VBA написать что​ в нужном формате​ вставить разрыв строки.​»Почтовый индекс» («00000»);​ нужное обозначение денежной​ получения строк формата.»​)​ текст на тайском​ «тисяч » End​ числа триады Else​ EdinicyPoslednie(18) = IIf(Valuta​ Module2 и введите​ Десятки(n As String,​ функции, создадим свою​Добавить специальную вставку. Здесь​ используются для отображения​ Ячейки, содержащие исходное​ то вроде =ЧислоПрописью(А1)​ (см. подробнее об​ Возможно, вам потребуется​»Индекс + 4″ («00000-0000»);​ единицы, и значения​ />​Текущее время, например: 13:29​ языке, включая названия​ If txt =​ txt = txt​ = 0, «восемнадцать​ в него следующий​ Sex As String)​ пользовательскую функцию с​ также применяется простое​ формата: с -​ число и формулу,​ и получить результат.​ отображении чисел, дат​ настроить ширину столбца​»Номер телефона» («[​ будут выровнены по​В примерах ниже показано,​=ТЕКСТ(0,285;​ тайской валюты.​ txt & Sclon_Tys​ & Edinicy(vl) &​ евро», IIf(Valuta =​ код:​ As String Десятки​ помощью макросов.​ арифметическое действие. Но​ секунда, м –​ можно перенести в​ Все промежуточные вычисления​ и времени). В​ в зависимости от​»Табельный номер» («000-00-0000»).​ нему. В финансовом​ как применить различные​»0,0 %»​Синтаксис:​ ‘-КОНЕЦ БЛОКА_______________________ Case​ mlrd(vl) End If​ 1, «восемнадцать рублей»,​Function ЧислоПрописьюВалюта(SumBase As Double,​ = «» Select​Для создания пользовательской функции,​ вспомогательный столбец создавать​ минута, г –​ любое место в​ должны быть «за​ файле примера приведен​ того, как окончательный​Дополнительные форматы зависят от​ формате символ рубля​ числовые форматы к​)​BAHTTEXT(номер)​ 3 ‘ -​ ‘-КОНЕЦ БЛОКА_______________________ Case​ «восемнадцать долларов»)) Edinicy(19)​ Valuta As Integer)​ Case Left(n, 1)​ которая сможет перевести​ не нужно. В​ год, М –​ книге или даже​ кадром». Но, создание​ наглядный пример: с​ результат будет выровнен.​ региональных параметров. Если​ располагается в ячейке​ значениям следующим способом:​Процентный формат, например: 28,5 %​Число является любым​ сотни vl =​ 9 ‘ -​ = «девятнадцать «:​ Dim Edinicy(0 To​ Case «0»: Десятки​ число в текст​ отдельной ячейке написать​ месяц. Чтобы эти​ в другую книгу.​ пользовательских функций это​ форматированием и без​В этом примере использована​ же дополнительные форматы​ справа от значения​ открыть диалоговое окно​= Текст (4.34,​ числом. «Baht» добавляется​ Mid(SumInt, shag, 1)​ сотни миллионов vl​ EdinicyPoslednie(19) = IIf(Valuta​ 19) As String:​ = «»: n​ прописью , нам​ цифру 1. Скопировать​ символы воспринимались как​Чтобы еще больше приблизиться​ прерогатива VBA.​ форматирования.​ формула​ недоступны для вашего​ (если выбрать обозначение​Формат ячеек​»# _км_/_км_»​ к интегральной части​ txt = txt​ = Mid(SumInt, shag,​ = 0, «девятнадцать​ Dim EdinicyPoslednie(0 To​ = Right(n, 1)​ нужно выполнить 3​ ячейку в буфер​ обычные, а не​ к идеалу создадим​Тем не менее, можно​В файле примера приведено​=»Сегодня: «&СИМВОЛ(10)&ТЕКСТ(СЕГОДНЯ();»ДД.ММ.ГГ»)​ региона или не​ доллара США, то​, выбрать пункт​)​ числа, а «Satang»​ & Sotni(vl) Case​ 1) txt =​ евро», IIf(Valuta =​ 19) As String​ Case «1»: Десятки​ простых шага:​ обмена (с помощью​ как символы формата,​ именованную формулу ЧислоПрописью.​ предложить следующее решение​ также множество других​.​ подходят для ваших​ эти символы будут​(все форматы)​Дробный формат, например: 4 1/3​ добавляется к целой​ 2 ‘ -​ txt & Sotni(vl)​ 1, «девятнадцать рублей»,​ Dim Desyatki(0 To​ = «» Case​Открыть редактор макросов ALT+F11.​ кнопки «Копировать» или​ не забудьте перед​ Для этого:​ с помощью обычных​ форматов.​Это экспоненциальное представление числа.​ нужд, вы можете​ выровнены по левому​и скопировать нужный​=СЖПРОБЕЛЫ(ТЕКСТ(0,34;​ части числа.​ десятки vl =​ Case 8 ‘​ «девятнадцать долларов»)) »———————————————​ 9) As String:​ «2»: Десятки =​Создать новый модуль и​ сочетания клавиш Ctrl​ ними ставить обратный​выделите ячейку​ формул:​По умолчанию текст в​ Excel автоматически приводит​ создать собственный формат,​ краю ячеек, а​код формата​»# ?/?»​Пример:​ Mid(SumInt, shag, 1)​ — десятки миллионов​ Desyatki(0) = «»:​ Dim Sotni(0 To​ «двадцать «: n​ в нем нужно​ + C). Выделить​ слеш .​B1​разместить в Личной книге​ ячейке выравнивается по​ к такому виду​ выбрав в диалоговом​ значения — по правому).​в формулу с​))​BAHTTEXT(12.65) возвращает строку​ If vl =​ vl = Mid(SumInt,​ Sotni(0) = «»:​ 9) As String:​ = Right(n, 1)​ написать функцию особенным​ столбец с редактируемыми​Пользовательский формат часто используется​;​ макросов (PERSONAL.XLSB) вспомогательные​ левому краю, а​ числа длиной более​ окне​ Обратите внимание на​ функцией​Дробный формат, например: 1/3​ в тайских символах​ «1» And Mid(SumInt,​ shag, 1) If​ tys(0) = «тисячь​ Dim mlrd(0 To​ Case «3»: Десятки​ способом: Function вместо​ числами. В контекстном​ для склонения времени,​через меню Формулы/ Определенные​ диапазоны, содержащие некоторые​ числа – по​ 12 цифр, если к​Формат ячеек​ разницу между кодами​ТЕКСТ​ Обратите внимание: функция​ со значением «двенадцать​ shag + 1,​ vl = «1»​ «: mln(0) =​ 9) As String​ = «тридцать «:​ Sub. Тогда наша​ меню кнопки «Вставить»​ например, 1 час,​ имена/ Присвоить имя​ числа прописью (от​ правому. Этот пример​ ячейкам применен формат​пункт​ денежных и финансовых​.​ СЖПРОБЕЛЫ используется для​ «Baht» и шестьдесят​ 1) <> 0​ And Mid(SumInt, shag​ «миллионов «: mlrd(0)​ Dim mln(0 To​ n = Right(n,​ функция «ЧислоПропись» будет​ нажать «Специальная вставка».​ 2 часа, 5​ создайте именованную формулу​ 0 до 999);​ научит вас преобразовывать​Общий​(все форматы)​ форматов: в финансовых​Выбор числового формата​ удаления начального пробела​ пять «Satang».​ Then GoTo 10​ + 1, 1)​ = «миллиардов «​ 9) As String:​ 1) Case «4»:​ отображаться в списке​ В открывшемся окне​ часов; 1 год,​ ЧислоПрописью;​создать формулу, переводящую в​ текстовый ряд, представленный​, и числа длиннее​.​ форматах для отделения​ ​ перед дробной частью.​Серж неизвесный​ Else txt =​ <> 0 Then​ Desyatki(1) = «десять​ Dim tys(0 To​ Десятки = «сорок​ мастера функций (SHIFT+F3),​ установить галочку напротив​ 5 лет; 2​в поле Диапазон введите​ текст любое число​ цифрами, в числовой.​ 15 цифр, если выбран​Функция​ символа денежной единицы​Выбор числового формата​=ТЕКСТ(12200000;​: Заставить на русском​ txt & Desyatki(vl)​ GoTo 10 Else​ «: Sotni(1) =​ 9) As String​ «: n =​ в категории «Определенные​ «Умножить». После нажатия​ месяца, 6 месяцев.​ формулу указанную выше:​ от 0 до​Выберите диапазон ячеек​

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

​ формат​текст​ от значения используется​Нули в начале​»0,00E+00″​ невозможно, но реализовать​ ‘ — если​

  • ​ txt = txt​
  • ​ «сто «: tys(1)​
  • ​ Dim SumInt, x,​

​ Right(n, 1) Case​ пользователем».​ ОК текстовый формат​ Это позволяет сделать​нажмите ОК;​ 1 млрд. с​A1:A4​Числовой​редко используется сама​ звездочка (*).​Разделитель групп разрядов.​

​)​ преобразование числа в​

​ конец триады от​ & Desyatki(vl) ‘​ = «тысяча «:​ shag, vl As​ «5»: Десятки =​Вставить в модуль следующий​ преобразуется в числовой.​ специальный условный формат.​в ячейке​ помощью вспомогательных диапазонов​и измените числовой​. Если вы вводите​

exceltable.com

Функция EXCEL ( BAHTTEXT преобразование числа в текст)

​ по себе и​Чтобы получить код формата​Числовые, денежные и финансовые​Экспоненциальное представление, например: 1,22E+07​ текст можно с​ 11 до 19​ — если конец​

​ mln(1) = «миллион​​ Integer: Dim txt,​
​ «пятьдесят «: n​
​ код и сохранить:​Удаление непечатаемых символов. Иногда​Например, формула склоняет сутки​
​В1​
​ и имен;​
​ формат на​ длинные цифровые строки,​
​ чаще всего используется​ для определенной денежной​ форматы​=ТЕКСТ(1234567898;​ помощью​
​ то перескакиваем на​
​ триады от 11​ «: mlrd(1) =​
​ Sclon_Tys As String​ = Right(n, 1)​
​​
​ числовой формат не​ =»сут»&ТЕКСТ(B3;»[В3. Такая конструкция​введите формулу =ЧислоПрописью​в любой книге, где​
​General​
​ но не хотите,​
​ в сочетании с​ единицы, сначала нажмите​Даты​»[)​keysoft.narod.ru/_private/PROG/propis.htm​ единицы, иначе -​
​ до 19 то​
​ «миллиарда » Desyatki(2)​ ‘——————————————— Application.Volatile ‘———————————————​ Case «6»: Десятки​Function ЧислоПропись(Число As Currency)​ распознается программой из-за​

​ формата говорит функции​​ячейка​ требуется записать число​(Общий).​ чтобы они отображались​ другими функциями. Предположим,​
​ клавиши​

​Значения времени​

Содержание

  • Конвертация числа в текстовый вид
    • Способ 1: форматирование через контекстное меню
    • Способ 2: инструменты на ленте
    • Способ 3: использование функции
  • Конвертация текста в число
    • Способ 1: преобразование с помощью значка об ошибке
    • Способ 2: конвертация при помощи окна форматирования
    • Способ 3: конвертация посредством инструментов на ленте
    • Способ 4: применение формулы
    • Способ 5: применение специальной вставки
    • Способ 6: использование инструмента «Текст столбцами»
    • Способ 7: применение макросов
  • Вопросы и ответы

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

Одной из частых задач, с которыми сталкиваются пользователи программы Эксель, является преобразования числовых выражений в текстовый формат и обратно. Этот вопрос часто заставляет потратить на решение много времени, если юзер не знает четкого алгоритма действий. Давайте разберемся, как можно решить обе задачи различными способами.

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

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

Для начала рассмотрим различные варианты решения задачи конвертации чисел в текстовый вид.

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

Чаще всего пользователи выполняют форматирование числовых выражений в текстовые через контекстное меню.

  1. Выделяем те элементы листа, в которых нужно преобразовать данные в текст. Как видим, во вкладке «Главная» на панели инструментов в блоке «Число» в специальном поле отображается информация о том, что данные элементы имеют общий формат, а значит, цифры, вписанные в них, воспринимаются программой, как число.
  2. Общий формат в Microsoft Excel

  3. Кликаем правой кнопкой мыши по выделению и в открывшемся меню выбираем позицию «Формат ячеек…».
  4. Переход в окно форматирования в Microsoft Excel

  5. В открывшемся окне форматирования переходим во вкладку «Число», если оно было открыто в другом месте. В блоке настроек «Числовые форматы» выбираем позицию «Текстовый». Для сохранения изменений жмем на кнопку «OK» в нижней части окна.
  6. Окно форматирования в Microsoft Excel

  7. Как видим, после данных манипуляций в специальном поле высвечивается информация о том, что ячейки были преобразованы в текстовый вид.
  8. Ячейки преобоазованы в текстовый формат в Microsoft Excel

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

  11. Чтобы завершить преобразование, нам нужно последовательно двойным щелчком левой кнопки мыши поместить курсор в каждый элемент диапазона в отдельности и нажать на клавишу Enter. Чтобы упростить задачу вместо двойного щелчка можно использовать нажатие функциональной клавиши F2.
  12. Преобразование числа в текст в Microsoft Excel

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

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

Урок: Как изменить формат в Excel

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

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

  1. Выделяем элементы, данные в которых нужно преобразовать в текстовый вид. Находясь во вкладке «Главная» кликаем по пиктограмме в виде треугольника справа от поля, в котором отображается формат. Оно расположено в блоке инструментов «Число».
  2. Переход к форматированию на ленте в Microsoft Excel

    Lumpics.ru

  3. В открывшемся перечне вариантов форматирования выбираем пункт «Текстовый».
  4. Выбор текстового формата в Microsoft Excel

  5. Далее, как и в предыдущем способе, последовательно устанавливаем курсор в каждый элемент диапазона двойным щелчком левой кнопки мыши или нажатием клавиши F2, а затем щелкаем по клавише Enter.

Данные преобразовываются в текстовый вариант.

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

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

  1. Устанавливаем курсор в первый элемент диапазона, в котором будет выводиться результат преобразования. Щелкаем по значку «Вставить функцию», который размещен около строки формул.
  2. Переход в Мастер функций в Microsoft Excel

  3. Запускается окно Мастера функций. В категории «Текстовые» выделяем пункт «ТЕКСТ». После этого кликаем по кнопке «OK».
  4. Переход к аргументам функции ТЕКСТ в Microsoft Excel

  5. Открывается окно аргументов оператора ТЕКСТ. Данная функция имеет следующий синтаксис:

    =ТЕКСТ(значение;формат)

    Открывшееся окно имеет два поля, которые соответствуют данным аргументам: «Значение» и «Формат».

    В поле «Значение» нужно указать преобразовываемое число или ссылку на ячейку, в которой оно находится. В нашем случае это будет ссылка на первый элемент обрабатываемого числового диапазона.

    В поле «Формат» нужно указать вариант отображения результата. Например, если мы введем «0», то текстовый вариант на выходе будет отображаться без десятичных знаков, даже если в исходнике они были. Если мы внесем «0,0», то результат будет отображаться с одним десятичным знаком, если «0,00», то с двумя, и т.д.

    После того, как все требуемые параметры введены, щелкаем по кнопке «OK».

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

  7. Как видим, значение первого элемента заданного диапазона отобразилось в ячейке, которую мы выделили ещё в первом пункте данного руководства. Для того, чтобы перенести и другие значения, нужно скопировать формулу в смежные элементы листа. Устанавливаем курсор в нижний правый угол элемента, который содержит формулу. Курсор преобразуется в маркер заполнения, имеющий вид небольшого крестика. Зажимаем левую кнопку мыши и протаскиваем по пустым ячейкам параллельно диапазону, в котором находятся исходные данные.
  8. Маркер заполнения в Microsoft Excel

  9. Теперь весь ряд заполнен требуемыми данными. Но и это ещё не все. По сути, все элементы нового диапазона содержат в себе формулы. Выделяем эту область и жмем на значок «Копировать», который расположен во вкладке «Главная» на ленте инструментов группе «Буфер обмена».
  10. Копирование в Microsoft Excel

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

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

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

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

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

На этом процедуру преобразования можно считать оконченной.

Урок: Мастер функций в Excel

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

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

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

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

  1. Выделяем ячейку, в которой содержится зеленый индикатор о возможной ошибке. Кликаем по появившейся пиктограмме.
  2. Значок об ошибке в Microsoft Excel

  3. Открывается список действий. Выбираем в нем значение «Преобразовать в число».
  4. Преобразование в число в Microsoft Excel

  5. В выделенном элементе данные тут же будут преобразованы в числовой вид.

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

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

  1. Выделяем весь диапазон, в котором находятся текстовые данные. Как видим, пиктограмма появилась одна для всей области, а не для каждой ячейки в отдельности. Щелкаем по ней.
  2. Пиктограмма для диапазона в Microsoft Excel

  3. Открывается уже знакомый нам список. Как и в прошлый раз, выбираем позицию «Преобразовать в число».

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

Все данные массива будут преобразованы в указанный вид.

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

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

Как и для преобразования данных из числового вида в текст, в Экселе существует возможность обратного конвертирования через окно форматирования.

  1. Выделяем диапазон, содержащий цифры в текстовом варианте. Кликаем правой кнопкой мыши. В контекстном меню выбираем позицию «Формат ячеек…».
  2. Переход к окну форматирования в Microsoft Excel

  3. Выполняется запуск окна форматирования. Как и в предыдущий раз, переходим во вкладку «Число». В группе «Числовые форматы» нам нужно выбрать значения, которые позволят преобразовать текст в число. К ним относится пункты «Общий» и «Числовой». Какой бы из них вы не выбрали, программа будет расценивать цифры, введенные в ячейку, как числа. Производим выбор и жмем на кнопку. Если вы выбрали значение «Числовой», то в правой части окна появится возможность отрегулировать представление числа: выставить количество десятичных знаков после запятой, установить разделителями между разрядами. После того, как настройка выполнена, жмем на кнопку «OK».
  4. Окно форматирования в программе Microsoft Excel

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

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

После выполнения этих действий все значения выбранного диапазона преобразуются в нужный нам вид.

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

Перевести текстовые данные в числовые можно, воспользовавшись специальным полем на ленте инструментов.

  1. Выделяем диапазон, который должен подвергнуться трансформации. Переходим во вкладку «Главная» на ленте. Кликаем по полю с выбором формата в группе «Число». Выбираем пункт «Числовой» или «Общий».
  2. Форматирование текстового формата в числовой через ленту в Microsoft Excel

  3. Далее прощелкиваем уже не раз описанным нами способом каждую ячейку преобразуемой области с применением клавиш F2 и Enter.

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

Значения в диапазоне будут преобразованы из текстовых в числовые.

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

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

  1. В пустой ячейке, расположенной параллельно первому элементу диапазона, который следует преобразовать, ставим знак «равно» (=) и двойной символ «минус» (—). Далее указываем адрес первого элемента трансформируемого диапазона. Таким образом, происходит двойное умножение на значение «-1». Как известно, умножение «минус» на «минус» дает «плюс». То есть, в целевой ячейке мы получаем то же значение, которое было изначально, но уже в числовом виде. Даная процедура называется двойным бинарным отрицанием.
  2. Формула в Microsoft Excel

  3. Жмем на клавишу Enter, после чего получаем готовое преобразованное значение. Для того, чтобы применить данную формулу для всех других ячеек диапазона, используем маркер заполнения, который ранее был применен нами для функции ТЕКСТ.
  4. Маркер заполнения для формулы двойного бинарного отрицания в Microsoft Excel

  5. Теперь мы имеем диапазон, который заполнен значениями с формулами. Выделяем его и жмем на кнопку «Копировать» во вкладке «Главная» или применяем сочетание клавиш Ctrl+C.
  6. Коопирование числовых значений в Microsoft Excel

  7. Выделяем исходную область и производим щелчок по ней правой кнопкой мыши. В активировавшемся контекстном списке переходим по пунктам «Специальная вставка» и «Значения и форматы чисел».
  8.  Применение специальной вставки в Microsoft Excel

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

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

Кстати, для преобразования значений данным методом совсем не обязательно использовать исключительно двойное умножение на «-1». Можно применять любое другое арифметическое действие, которое не ведет к изменению значений (сложение или вычитание нуля, выполнение возведения в первую степень и т.д.)

Урок: Как сделать автозаполнение в Excel

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

Следующий способ по принципу действия очень похож на предыдущий с той лишь разницей, что для его использования не нужно создавать дополнительный столбец.

  1. В любую пустую ячейку на листе вписываем цифру «1». Затем выделяем её и жмем на знакомый значок «Копировать» на ленте.
  2. Копирование цифры 1 в Microsoft Excel

  3. Выделяем область на листе, которую следует преобразовать. Кликаем по ней правой кнопкой мыши. В открывшемся меню дважды переходим по пункту «Специальная вставка».
  4. Переход в специальную вставку в Microsoft Excel

  5. В окне специальной вставки выставляем переключатель в блоке «Операция» в позицию «Умножить». Вслед за этим жмем на кнопку «OK».
  6. Специальная вставка в программе Microsoft Excel

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

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

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

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

  1. Выделяем фрагмент листа, содержимое которого нужно преобразовать. Переходим во вкладку «Данные». На ленте инструментов в блоке «Работа с данными» кликаем по значку «Текст по столбцам».
  2. Переход к инструменту Текст по столбцам в Microsoft Excel

  3. Запускается Мастер текстов. В первом окне обратите внимание, чтобы переключатель формата данных стоял в позиции «С разделителями». По умолчанию он должен находиться в этой позиции, но проверить состояние будет не лишним. Затем кликаем по кнопке «Далее».
  4. Первое окно Мастера текстов в Microsoft Excel

  5. Во втором окне также оставляем все без изменений и жмем на кнопку «Далее».
  6. Второе окно Мастера текстов в Microsoft Excel

  7. А вот после открытия третьего окна Мастера текстов нужно нажать на кнопку «Подробнее».
  8. Третье окно Мастера текстов в Microsoft Excel

  9. Открывается окно дополнительной настройки импорта текста. В поле «Разделитель целой и дробной части» устанавливаем точку, а в поле «Разделитель разрядов» — апостроф. Затем делаем один щелчок по кнопке «OK».
  10. Дополнительная настройка импорта текста в Microsoft Excel

  11. Возвращаемся в третье окно Мастера текстов и жмем на кнопку «Готово».
  12. Завершение работы в Мастере текста в Microsoft Excel

  13. Как видим, после выполнения данных действий числа приняли привычный для русскоязычной версии формат, а это значит, что они одновременно были преобразованы из текстовых данных в числовые.

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

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

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

  1. Переходим во вкладку «Разработчик». Жмем на значок на ленте «Visual Basic», который размещен в группе «Код».
  2. Переход в редактор макросов в Microsoft Excel

  3. Запускается стандартный редактор макросов. Вбиваем или копируем в него следующее выражение:


    Sub Текст_в_число()
    Selection.NumberFormat = "General"
    Selection.Value = Selection.Value
    End Sub

    После этого закрываем редактор, выполнив нажатие стандартной кнопки закрытия в верхнем правом углу окна.

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

  5. Выделяем фрагмент на листе, который нужно преобразовать. Жмем на значок «Макросы», который расположен на вкладке «Разработчик» в группе «Код».
  6. Переход к списку макросов в Microsoft Excel

  7. Открывается окно записанных в вашей версии программы макросов. Находим макрос с наименованием «Текст_в_число», выделяем его и жмем на кнопку «Выполнить».
  8. Окно макросов в Microsoft Excel

  9. Как видим, тут же происходит преобразование текстового выражения в числовой формат.

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

Урок: Как создать макрос в Экселе

Как видим, существует довольно много вариантов преобразования в Excel цифр, которые записаны в числовом варианте, в текстовый формат и в обратном направлении. Выбор определенного способа зависит от многих факторов. Прежде всего, это поставленная задача. Ведь, например, быстро преобразовать текстовое выражение с иностранными разделителями в числовое можно только использовав инструмент «Текст столбцами». Второй фактор, который влияет на выбор варианта – это объемы и частота выполняемых преобразований. Например, если вы часто используете подобные преобразования, имеет смысл произвести запись макроса. И третий фактор – индивидуальное удобство пользователя.

Excel для Microsoft 365 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Еще…Меньше

В Excel нет функции по умолчанию, которая отображает числа в качестве английских слов на листах, но вы можете добавить эту возможность, вклеив следующий код функции SpellNumber в модуль VBA (Visual Basic для приложений). Эта функция позволяет преобразовать суммы в рублях и центах в слова с помощью формулы, поэтому 22,50 будет читаться как Twenty-Two рублях и fifty Cents. Это может быть очень полезно, если вы используете Excel в качестве шаблона для печати проверок.

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

Примечание: Корпорация Майкрософт предоставляет примеры программирования только для иллюстрации без каких-либо гарантий, как выраженных, так и подразумеваемых. При этом подразумеваемые гарантии пригодности для определенной цели включают, но не ограничив эту возможность. В этой статье предполагается, что вы знакомы с языком программирования VBA и средствами, которые используются для создания и отлагки процедур. Инженеры службы поддержки Майкрософт могут объяснить функциональные возможности конкретной процедуры. Однако они не будут изменять эти примеры, чтобы обеспечить дополнительные функции или создавать процедуры в порядке, отвечая вашим требованиям.

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

  1. Используйте клавиши ALT+F11, чтобы открыть редактор Visual Basic (VBE).

  2. На вкладке Insert (Вставка) нажмите кнопку Module (Модуль).

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

  3. Скопируйте приведенный ниже код.

    Примечание: Этот код автоматизирует преобразование чисел в текст на всем компьютере.

    Option Explicit
    
    'Main Function
    
    Function SpellNumber(ByVal MyNumber)
    
    Dim Dollars, Cents, Temp
    
    Dim DecimalPlace, Count
    
    ReDim Place(9) As String
    
    Place(2) = " Thousand "
    
    Place(3) = " Million "
    
    Place(4) = " Billion "
    
    Place(5) = " Trillion "
    
    ' String representation of amount.
    
    MyNumber = Trim(Str(MyNumber))
    
    ' Position of decimal place 0 if none.
    
    DecimalPlace = InStr(MyNumber, ".")
    
    ' Convert cents and set MyNumber to dollar amount.
    
    If DecimalPlace > 0 Then
    
    Cents = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & _ "00", 2))
    
    MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))
    
    End If
    
    Count = 1
    
    Do While MyNumber <> ""
    
    Temp = GetHundreds(Right(MyNumber, 3))
    
    If Temp <> "" Then Dollars = Temp & Place(Count) & Dollars
    
    If Len(MyNumber) > 3 Then
    
    MyNumber = Left(MyNumber, Len(MyNumber) - 3)
    
    Else
    
    MyNumber = ""
    
    End If
    
    Count = Count + 1
    
    Loop
    
    Select Case Dollars
    
    Case ""
    
    Dollars = "No Dollars"
    
    Case "One"
    
    Dollars = "One Dollar"
    
    Case Else
    
    Dollars = Dollars & " Dollars"
    
    End Select
    
    Select Case Cents
    
    Case ""
    
    Cents = " and No Cents"
    
    Case "One"
    
    Cents = " and One Cent"
    
    Case Else
    
    Cents = " and " & Cents & " Cents"
    
    End Select
    
    SpellNumber = Dollars & Cents
    
    End Function
    
    
    ' Converts a number from 100-999 into text
    
    Function GetHundreds(ByVal MyNumber)
    
    Dim Result As String
    
    If Val(MyNumber) = 0 Then Exit Function
    
    MyNumber = Right("000" & MyNumber, 3)
    
    ' Convert the hundreds place.
    
    If Mid(MyNumber, 1, 1) <> "0" Then
    
    Result = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred "
    
    End If
    
    ' Convert the tens and ones place.
    
    If Mid(MyNumber, 2, 1) <> "0" Then
    
    Result = Result & GetTens(Mid(MyNumber, 2))
    
    Else
    
    Result = Result & GetDigit(Mid(MyNumber, 3))
    
    End If
    
    GetHundreds = Result
    
    End Function
    
    
    ' Converts a number from 10 to 99 into text.
    
    
    Function GetTens(TensText)
    
    Dim Result As String
    
    Result = "" ' Null out the temporary function value.
    
    If Val(Left(TensText, 1)) = 1 Then ' If value between 10-19...
    
    Select Case Val(TensText)
    
    Case 10: Result = "Ten"
    
    Case 11: Result = "Eleven"
    
    Case 12: Result = "Twelve"
    
    Case 13: Result = "Thirteen"
    
    Case 14: Result = "Fourteen"
    
    Case 15: Result = "Fifteen"
    
    Case 16: Result = "Sixteen"
    
    Case 17: Result = "Seventeen"
    
    Case 18: Result = "Eighteen"
    
    Case 19: Result = "Nineteen"
    
    Case Else
    
    End Select
    
    Else ' If value between 20-99...
    
    Select Case Val(Left(TensText, 1))
    
    Case 2: Result = "Twenty "
    
    Case 3: Result = "Thirty "
    
    Case 4: Result = "Forty "
    
    Case 5: Result = "Fifty "
    
    Case 6: Result = "Sixty "
    
    Case 7: Result = "Seventy "
    
    Case 8: Result = "Eighty "
    
    Case 9: Result = "Ninety "
    
    Case Else
    
    End Select
    
    Result = Result & GetDigit _
    
    (Right(TensText, 1)) ' Retrieve ones place.
    
    End If
    
    GetTens = Result
    
    End Function
    
    
    ' Converts a number from 1 to 9 into text.
    
    Function GetDigit(Digit)
    
    Select Case Val(Digit)
    
    Case 1: GetDigit = "One"
    
    Case 2: GetDigit = "Two"
    
    Case 3: GetDigit = "Three"
    
    Case 4: GetDigit = "Four"
    
    Case 5: GetDigit = "Five"
    
    Case 6: GetDigit = "Six"
    
    Case 7: GetDigit = "Seven"
    
    Case 8: GetDigit = "Eight"
    
    Case 9: GetDigit = "Nine"
    
    Case Else: GetDigit = ""
    
    End Select
    
    End Function

  4. Вставьте строки кода в поле Module1 (Code) (Модуль 1 — код).

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

  5. Нажмите ALT+Q, чтобы вернуться в Excel. Функция SpellNumber готова к использованию.

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

К началу страницы

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

  1. Введите формулу =SpellNumber(A1)в ячейку, в которой нужно отобразить записанное число, где A1 — это ячейка с числом, преобразуемом в ячейку. Вы также можете ввести значение вручную, например =SpellNumber(22,50).

  2. Нажмите ввод, чтобы подтвердить формулу.

К началу страницы

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

В Excel не удается сохранить книгу с функциями макроса в стандартном формате книги без макроса (XLSX). Если нажать кнопку «>сохранить». Откроется диалоговое окно проекта VB. щелкните Нет.

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

Вы можете сохранить файл как книгу Excel Macro-Enabled (XLSM), чтобы сохранить его в текущем формате.

  1. На вкладке Файл выберите команду Сохранить как.

  2. В меню «Тип сохранения» выберите пункт «Macro-Enabled Excel».

  3. Нажмите кнопку Сохранить.

К началу страницы

Нужна дополнительная помощь?

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

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

Перейти к содержимому

Как в «Эксель» перевести число в текст или наоборот перевести текст в числа.

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

«ТЕКСТ», «РУБЛЬ» и «ЗНАЧЕН».перевод текста в число

Рассмотрим отдельно каждую функцию.

Применение функции «ТЕКСТ».

  • Выбираем ячейку, в которую хотим поместить текстовое значение;
  • Вызываем мастер функций;
  • Выбираем функцию «ТЕКСТ»;
  • Указываем ячейку, из которой берем значение;
  • Обязательно указываем формат (формат можно выбрать, открыв меню «формат ячеек», вкладка – (все форматы)), можно поставить формат «Общий»;
  • Нажимаем «ОК»;
  • В указанную ячейку перенесено число в текстовом формате

Применение функции «РУБЛЬ».

  • Выбираем ячейку, в которую хотим поместить текстовое значение;
  • Вызываем мастер функций;
  • Выбираем функцию «РУБЛЬ»;
  • Указываем ячейку, из которой берем значение;
  • Нажимаем «ОК»;
  • В указанную ячейку перенесено число в текстовом формате с обозначением «руб.»

Применение функции «ЗНАЧЕН».

  • Выбираем ячейку, в которую хотим поместить значение в формате числа;
  • Вызываем мастер функций;
  • Выбираем функцию «ЗНАЧЕН»;
  • Указываем ячейку, из которой берем текстовое значение;
  • Нажимаем «ОК»;
  • В указанную ячейку перенесено число в числовом формате.

Часто возникает необходимость в написании чисел прописью (словами), например, записать число «123», как «Сто двадцать три».

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

Готовый макрос СУММА_ПРОПИСЬЮ можно скачать на странице: «Надстройка СУММА_ПРОПИСЬЮ»

Каждый пользователь, которому много приходится работать с документами, хотел бы упростить, автоматизировать свою работу хотя бы в какой-то степени. Специальные средства, реализованные разработчиками в редакторе таблиц Microsoft Excel, позволяют это сделать. В этой статье разберёмся, как в Excel преобразовать число в текст и наоборот. Давайте же начнём. Поехали!

Как в Excel преобразовать число в текст

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

Существует несколько способов для эффективного решения поставленной задачи. Рассмотрим более подробно каждый из них.

Форматирование через контекстное меню

Это самый часто используемый вариант конвертации, поэтому мы решили начать именно с него. Следуйте приведённой ниже инструкции, и у вас всё получится.

  1. Первым делом выделите те значения на листе, которые вы хотите конвертировать в текст. На текущем этапе программа воспринимает эти данные как число. Об этом свидетельствует установленный параметр «Общий», который находится на вкладке «Главная».Параметр Общий
  2. Кликните правой кнопкой мыши по выделенному объекту и в появившемся меню выберите «Формат ячеек».Формат ячеек
  3. Перед вами появится окошко форматирования. Откройте подраздел «Число» и в списке «Числовые форматы» нажмите на пункт «Текстовый». Далее сохраните изменения клавишей «ОК».
  4. По завершении этой процедуры вы можете убедиться в успешном преобразовании, посмотрев на подменю «Число», находящееся на панели инструментов. Если вы всё сделали верно, в специальном поле будет отображаться информация о том, что ячейки имеют текстовый вид.
  5. Однако, на предыдущем шаге настройка не заканчивается. Excel ещё не полностью выполнил конвертацию. Например, если вы решите подсчитать автосумму, то чуть ниже высветится результат.
  6. Для того чтобы завершить процесс форматирования, поочерёдно для каждого элемента выбранного диапазона проделайте следующие манипуляции: сделайте два клика левой кнопкой мыши по ячейке и нажмите на клавишу «Enter». Двойное нажатие также можно заменить функциональной кнопкой «F2».
  7. Готово! Теперь приложение будет воспринимать числовую последовательность как текстовое выражения, а значит, и автосумма этой области данных будет равняться нулю. Ещё одним признаком того, что ваши действия привели к необходимому результату, является наличие зелёного треугольника внутри каждой ячейки. Единственное — эта пометка в ряде случаев может отсутствовать.

Инструменты в ленте

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

  1. Выделите нужную область значений, а затем перейдите во вкладку «Главная». Здесь вам необходимо найти категорию «Число» и кликнуть на небольшой треугольник рядом с полем формата (по умолчанию выставлен «Общий»).
  2. В выпадающем перечне вариантов выберите «Текстовый» тип отображения.
  3. После чего, как и в предыдущем методе, последовательно для всего диапазона, установите курсор на каждую ячейку и сделайте двойной клик ЛКМ (или F2), а затем щёлкните на клавишу «Enter».

Использование функции

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

Как работать с этой опцией:

  1. Выберите ячейку, с которой будет начинаться преобразованный диапазон. Далее около строчки с формулами кликните на иконку «Вставить функцию».Вставка функции
  2. Перед вами откроется окно «Мастер функций». Здесь нужно выбрать категорию «Текстовые» и в поле, находящемся чуть ниже, соответствующий пункт «ТЕКСТ». Подтвердите нажатием «ОК».Вставка текстовой функции
  3. Далее появится панель с настройкой аргументов для выбранной функции, которая состоит из двух параметров: «Значение» и «Формат». В первое поле введите преобразуемое число, либо укажите ссылку на то место, где оно расположено. Второе поле предназначено для корректировки нецелых чисел. Например, если вы пропишите «0», то результат будет без дробных знаков, хоть в исходнике они и присутствовали. Соответственно, если написать «0,0», то текстовый тип будет иметь одну цифру после запятой. Аналогичным образом формируется то, что вы увидите на выходе, если внести «0,00» и тому подобные варианты.

По завершении всех манипуляций нажмите на клавишу «ОК».

  1. Теперь следует просто скопировать формулу в смежные элементы листа. Для этого наведите курсор на левый нижний угол только что отредактированной ячейки. Когда курсор изменит вид на небольшой крестик, зажмите левую кнопку мыши и перетащите формулу на всё поле диапазона параллельно исходным данным.
  2. Как вы видите, все числа появились на своих местах. Однако, на этом процесс конвертации ещё не закончен. Выделите полученный столбец и на вкладке «Главная» в самом первом разделе «Буфер обмена» нажмите на значок «Копировать».
  3. Если вы хотите сохранить и начальный вариант: не сбрасывая выделение, кликните правой кнопкой мыши по преобразованной области и в предложенном списке выберите «Специальная вставка», а в следующем окне щёлкните на «Значения и форматы чисел».Специальная вставка

В том случае, если вы желаете заменить изначальные данные новыми, редактируйте именно столбец-исходник. Произведите вставку по тому же принципу, что описан выше.

  1. Если вы выбрали второй вариант, то фрагмент с формулами можно удалить. Чтобы это сделать, выделите их, кликните ПКМ → «Очистить содержимое».Очистка содержимого

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

Пришло время рассмотреть способы обратной конвертации в Excel. Методов по переводу текстовых данных в числовые несколько больше, поэтому мы уверены, что вы найдёте для себя наиболее подходящий.

Преобразование с помощью уведомления об ошибке

Один из самых быстрых и простых способов произвести конвертацию — это воспользоваться специальным значком, уведомляющим пользователя о возможной ошибке. Эта иконка имеет форму ромба, в который вписан восклицательный знак. Обычно она появляется при выделении ячеек, имеющих зелёную пометку в верхнем левом углу, о которой мы ранее уже говорили. Цифры, содержащиеся в поле с текстовым представлением, вызывают подозрения у программы, и она тем самым сигнализирует юзеру, чтобы тот обратил внимание на этот момент. Однако, Excel не всегда отображает данный значок, поэтому рассматриваемый способ форматирования является скорее ситуационным. Но в любом случае, если вы обнаружили у себя этот «маячок», можете легко выполнить нужные преобразования.

  1. Нажмите на ту ячейку, в которой находится индикатор об ошибке, а затем кликните на соответствующую пиктограмму.Преобразование с помощью уведомления об ошибке
  2. В открывшемся меню выберите пункт «Преобразовать в число».
  3. После этого объект сразу примет числовой тип.
  4. Если необходимо переформатировать одновременно несколько значений, выделите весь диапазон и повторите предыдущие шаги.

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

В Excel также имеется возможность обратного конвертирования через специальное форматирующее окошко. Алгоритм следующий:

  1. Выделите диапазон цифр, представленных в текстовом варианте, а затем щёлкните правой кнопкой мышки.
  2. В контекстном меню нас интересует позиция «Формат ячеек».
  3. Запустится окно форматирования, в котором необходимо сделать выбор в пользу одного из двух форматов: «Общий» или «Числовой». Независимо от того, на каком варианте вы остановились, приложение будет воспринимать цифры как числа. Единственное, если вы выбрали «Числовой» метод, то в правом блоке можно дополнительно настроить такие параметры как, количество знаков после запятой и разрядные разделители. После всех манипуляций нажмите на «ОК».Формат ячеек
  4. На последнем этапе нужно один за другим прощёлкать все элементы, установив курсор в каждый из них и нажав «Enter».

Инструменты в ленте

Ещё один достаточно простой способ перевода текстового типа данных в числовой осуществляется при помощи инструментов, находящихся на верхней рабочей панели.

  1. В первую очередь следует выделить те значения, которые предстоит трансформировать. Далее на панели быстрого доступа перейдите во вкладку «Главная», а затем на ленте найдите группу «Число».
  2. В специальном поле выставьте «Общий» вид или «Числовой».Числовой
  3. После этого отдельно нажмите на каждую из выделенных ячеек, используя клавиши «F2» и «Enter». Алгоритм уже был нами описан выше.

Форматирование завершено! Необходимые текстовые данные изменили тип на числовой.

Применение формулы

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

  1. В пустой ячейке, напротив первого преобразуемого объекта впишите следующую последовательность символов: «=» и «—» (знак «равно» и два минуса). Затем укажите ссылку на трансформируемый элемент. В приведённом случае мы выполнили двойное умножение на «-1» и получили тот же самый результат, но только в другом формате.Работа с формулами
  2. После нажатия «Enter» вы увидите готовое значение. При помощи маркера заполнения растяните эту формулу на всю область диапазона. Это действие аналогично уже описанному нами в пункте про функцию «ТЕКСТ».
  3. Теперь нужно выделить созданный столбец и скопировать его, кликнув на соответствующую кнопку на вкладке «Главная». Кроме того, можно использовать комбинацию: «Ctrl + C».
  4. Далее выделите изначальный список и кликните ПКМ. В представленном перечне опций выберите «Специальная вставка» → «Значения и форматы чисел».
  5. Исходные данные были заменены новыми. На этапе транзитный диапазон с нашей формулой уже можно удалить. Выделите его, щёлкните правой кнопкой мышки и в выпавшем меню выберите «Очистить содержимое».

Обращаем ваше внимание, что вместо двойного умножения на минус единицу можно воспользоваться и другими операциями, не влияющими на итоговое число. Например, прибавить или отнять от него ноль и тому подобное.

Опция специальной вставки

Этот способ во многом схож с предыдущим, однако имеет одно отличие: здесь нет необходимости создавать новый столбец. Перейдём непосредственно к инструкции:

  1. В любом пустом месте на листе впишите цифру «1», а затем скопируйте эту ячейку уже знакомой опцией «Копировать» на ленте инструментов.
  2. После чего выделите преобразуемый диапазон и кликните ПКМ. В открывшемся окне дважды перейдите в пункт «Специальная вставка».
  3. Откроется меню настройки, здесь необходимо установить флажок в блоке «Операция» напротив строчки «Умножить». Подтвердите внесённые изменения кнопкой «ОК».
  4. Вот и всё! Конвертация окончена. Вспомогательную единицу, которую мы применяли для этой процедуры, можно смело удалить.

Инструмент «Текст столбцами»

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

  1. Выделите исходный фрагмент, а затем запустите необходимую опцию, перейдя поп пути «Данные» → «Работа с данными» → «Текст по столбцам».Распределение текста
  2. Перед вами откроется «Мастер текстов». Оказавшись на первой странице, обязательно убедитесь, что в форматирующем блоке напротив пункта «С разделителями» стоит флажок. После этого нажмите «Далее».
  3. На втором шаге ничего менять не нужно, поэтому просто кликните «Далее».
  4. На третьем шаге необходимо перейти по кнопке «Подробнее», расположенной в правой части окошка.
  5. В окошке настроек, в свободном поле «Разделитель целой и дробной части» впишите точку, а в поле «Разделитель разрядов» — апостроф. Следом нажмите «ОК».
  6. После возвращения к «Мастеру текстов» нажмите «Готово».

Применение макросов

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

  1. Выполните переход во вкладку «Разработчик», затем на ленте найдите категорию «Код» и нажмите на «Visual Basic».
  2. Откроется редактор, в который потребуется вставить следующий текст:
    Sub Текст_в_число()

    Selection.NumberFormat = "General"

    Selection.Value = Selection.Value

    End Sub

    После вставки просто закройте это окошко, кликнув на стандартный крестик.

    разработчик в Excel

  3. Далее выделите фрагмент, который следует переформатировать. После этого на вкладке «Разработчик» в области «Код» кликните на «Макросы».
  4. В списке всех записанных макросов выберите «Текст_в_число» и нажмите «Выполнить».
  5. Конвертация успешно завершена.

Конвертирование при помощи сторонней надстройки

Для реализации этого способа в первую очередь необходимо скачать и установить специальную надстройку «sumprop». После того как вы скачаете пакет, переместите файл «sumprop» в папку, путь к которой можно посмотреть следующим образом. Откройте меню «Файл» и нажмите «Параметры». В окне параметров Excel перейдите на вкладку «Надстройки». Внизу, в пункте «Управление» укажите «Надстройки Excel» и щёлкните по кнопке «Перейти». В открывшемся окне нажмите «Обзор». Далее скопируйте путь к папке, в которую нужно будет переместить файл «sumprop». После этого запустите Excel заново и ещё раз откройте окно надстроек (повторите вышеописанные действия). В разделе «Доступные надстройки» отметьте галочкой пункт «Сумма прописью». Нужная функция появится в программе.

Надстройки в Excel

Теперь рассмотрим, как этим пользоваться. В ячейку введите какое-нибудь число и нажмите на кнопку «Вставить функцию». В появившемся окне выберите «Определённые пользователем» в разделе «Категория». В списке ниже вы найдёте функции «ЧислоПрописью», «СуммаПрописью» и несколько её вариаций для валют (рубли, гривны, доллары, евро). Удобно использовать, если необходимо указать какую-либо денежную сумму словами, что очень часто требуется в различной документации.

Обратите внимание, что после того, как вы применили функцию к какой-либо ячейке, все числа, которые вы будете в неё вводить, сразу будут преобразованы в текст. Используйте «ЧислоПрописью» или «СуммаПрописью» в зависимости от того, какие задачи стоят перед вами сейчас.

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

Часто нужно перевести число в текст в Excel так, чтобы оно отображалось прописью (словами) на русском или других языках. Так как по умолчанию нет готовой функции, создадим свою пользовательскую функцию с помощью макросов.

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

числа словами в Excel.

Для создания пользовательской функции, которая сможет перевести число в текст прописью , нам нужно выполнить 3 простых шага:

  1. Открыть редактор макросов ALT+F11.
  2. Создать новый модуль и в нем нужно написать функцию особенным способом: Function вместо Sub. Тогда наша функция «ЧислоПропись» будет отображаться в списке мастера функций (SHIFT+F3), в категории «Определенные пользователем».
  3. Module.

  4. Вставить в модуль следующий код и сохранить:



Function ЧислоПропись(Число As CurrencyAs String
‘до 999 999 999 999
On Error GoTo Число_Error
Dim strМиллиарды As String, strМиллионы As String, strТысячи As String, strЕдиницы As String, strСотые As String
Dim Поз As Integer

 
strЧисло = Format(Int(Число), 

«000000000000»)

‘Миллиарды’
Поз = 1
strМиллиарды = Сотни(Mid(strЧисло, Поз, 1))
strМиллиарды = strМиллиарды & Десятки(Mid(strЧисло, Поз + 1, 2), «м»)
strМиллиарды = strМиллиарды & ИмяРазряда(strМиллиарды, Mid(strЧисло, Поз + 1, 2), «миллиард ««миллиарда ««миллиардов «)

‘Миллионы’
Поз = 4
strМиллионы = Сотни(Mid(strЧисло, Поз, 1))
strМиллионы = strМиллионы & Десятки(Mid(strЧисло, Поз + 1, 2), «м»)
strМиллионы = strМиллионы & ИмяРазряда(strМиллионы, Mid(strЧисло, Поз + 1, 2), «миллион ««миллиона ««миллионов «)

‘Тысячи’
Поз = 7
strТысячи = Сотни(Mid(strЧисло, Поз, 1))
strТысячи = strТысячи & Десятки(Mid(strЧисло, Поз + 1, 2), «ж»)
strТысячи = strТысячи & ИмяРазряда(strТысячи, Mid(strЧисло, Поз + 1, 2), «тысяча ««тысячи ««тысяч «)

‘Единицы’
Поз = 10
strЕдиницы = Сотни(Mid(strЧисло, Поз, 1))
strЕдиницы = strЕдиницы & Десятки(Mid(strЧисло, Поз + 1, 2), «м»)
If strМиллиарды & strМиллионы & strТысячи & strЕдиницы = «» Then strЕдиницы = «ноль «
‘strЕдиницы = strЕдиницы & ИмяРазряда(» «, Mid(strЧисло, Поз + 1, 2), «рубль «, «рубля «, «рублей «)

‘Сотые’
‘strСотые = strКопейки & » » & ИмяРазряда(strКопейки, Right(strКопейки, 2), ‘»копейка», «копейки», «копеек»)

 
ЧислоПропись = strМиллиарды & strМиллионы & strТысячи & strЕдиницы
ЧислоПропись = UCase(Left(ЧислоПропись, 1)) & Right(ЧислоПропись, Len(ЧислоПропись) — 1)

Exit Function

 
Число_Error:
    MsgBox Err.Description

End Function

Function Сотни(n As StringAs String
Сотни = «»
Select Case n
    Case 0: Сотни = «»
    Case 1: Сотни = «сто «
    Case 2: Сотни = «двести «
    Case 3: Сотни = «триста «
    Case 4: Сотни = «четыреста «
    Case 5: Сотни = «пятьсот «
    Case 6: Сотни = «шестьсот «
    Case 7: Сотни = «семьсот «
    Case 8: Сотни = «восемьсот «
    Case 9: Сотни = «девятьсот «
End Select
End Function

Function Десятки(n As String, Sex As StringAs String
Десятки = «»
Select Case Left(n, 1)
    Case «0»: Десятки = «»: n = Right(n, 1)
    Case «1»: Десятки = «»
    Case «2»: Десятки = «двадцать «: n = Right(n, 1)
    Case «3»: Десятки = «тридцать «: n = Right(n, 1)
    Case «4»: Десятки = «сорок «: n = Right(n, 1)
    Case «5»: Десятки = «пятьдесят «: n = Right(n, 1)
    Case «6»: Десятки = «шестьдесят «: n = Right(n, 1)
    Case «7»: Десятки = «семьдесят «: n = Right(n, 1)
    Case «8»: Десятки = «восемьдесят «: n = Right(n, 1)
    Case «9»: Десятки = «девяносто «: n = Right(n, 1)
End Select

Dim Двадцатка As String
Двадцатка = «»
Select Case n
    Case «0»: Двадцатка = «»
    Case «1»
        Select Case Sex
            Case «м»: Двадцатка = «один «
            Case «ж»: Двадцатка = «одна «
            Case «с»: Двадцатка = «одно «
        End Select
    Case «2»:
        Select Case Sex
            Case «м»: Двадцатка = «два «
            Case «ж»: Двадцатка = «две «
            Case «с»: Двадцатка = «два «
        End Select
    Case «3»: Двадцатка = «три «
    Case «4»: Двадцатка = «четыре «
    Case «5»: Двадцатка = «пять «
    Case «6»: Двадцатка = «шесть «
    Case «7»: Двадцатка = «семь «
    Case «8»: Двадцатка = «восемь «
    Case «9»: Двадцатка = «девять «
    Case «10»: Двадцатка = «десять «
    Case «11»: Двадцатка = «одиннадцать «
    Case «12»: Двадцатка = «двенадцать «
    Case «13»: Двадцатка = «тринадцать «
    Case «14»: Двадцатка = «четырнадцать «
    Case «15»: Двадцатка = «пятнадцать «
    Case «16»: Двадцатка = «шестнадцать «
    Case «17»: Двадцатка = «семнадцать «
    Case «18»: Двадцатка = «восемнадцать «
    Case «19»: Двадцатка = «девятнадцать «
End Select

 
Десятки = Десятки & Двадцатка

End Function

Function ИмяРазряда(Строка As String, n As String, Имя1 As String, Имя24 As String, ИмяПроч As StringAs String

If Строка <> «» Then
    ИмяРазряда = «»
    Select Case Left(n, 1)
        Case «0»«2»«3»«4»«5»«6»«7»«8»«9»: n = Right(n, 1)
    End Select

Select Case n
        Case «1»: ИмяРазряда = Имя1
        Case «2»«3»«4»: ИмяРазряда = Имя24
        Case Else: ИмяРазряда = ИмяПроч
    End Select
End If

End Function

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

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

Function ЧислоПрописьюВалюта(Число As DoubleOptional Валюта As Integer = 1, Optional Копейки As Integer = 1)
Attribute ЧислоПрописьюВалюта.VB_Description = «Функция преобразовывает число суммы текстовыми словами»
Attribute ЧислоПрописьюВалюта.VB_ProcData.VB_Invoke_Func = » n1″
Dim Edinicy(0 To 19) As StringDim EdinicyPoslednie(0 To 19) As String
Dim Desyatki(0 To 9) As StringDim Sotni(0 To 9) As StringDim mlrd(0 To 9) As String
Dim mln(0 To 9) As StringDim tys(0 To 9) As String
Dim SumInt, x, shag, vl As IntegerDim txt, Sclon_Tys As String
‘———————————————
Application.Volatile
‘———————————————
Edinicy(0) = «»: EdinicyPoslednie(0) = IIf(Валюта = 0, «евро», IIf(Валюта = 1, «рублей»«долларов»))
Edinicy(1) = «один «: EdinicyPoslednie(1) = IIf(Валюта = 0, «один евро», IIf(Валюта = 1, «один рубль»«один доллар»))
Edinicy(2) = «два «: EdinicyPoslednie(2) = IIf(Валюта = 0, «два евро», IIf(Валюта = 1, «два рубля»«два доллара»))
Edinicy(3) = «три «: EdinicyPoslednie(3) = IIf(Валюта = 0, «три евро», IIf(Валюта = 1, «три рубля»«три доллара»))
Edinicy(4) = «четыре «: EdinicyPoslednie(4) = IIf(Валюта = 0, «четыре евро», IIf(Валюта = 1, «четыре рубля»«четыре доллара»))
Edinicy(5) = «пять «: EdinicyPoslednie(5) = IIf(Валюта = 0, «пять евро», IIf(Валюта = 1, «пять рублей»«пять долларов»))
Edinicy(6) = «шесть «: EdinicyPoslednie(6) = IIf(Валюта = 0, «шесть евро», IIf(Валюта = 1, «шесть рублей»«шесть долларов»))
Edinicy(7) = «семь «: EdinicyPoslednie(7) = IIf(Валюта = 0, «семь евро», IIf(Валюта = 1, «семь рублей»«семь долларов»))
Edinicy(8) = «восемь «: EdinicyPoslednie(8) = IIf(Валюта = 0, «восемь евро», IIf(Валюта = 1, «восемь рублей»«восемь долларов»))
Edinicy(9) = «девять «: EdinicyPoslednie(9) = IIf(Валюта = 0, «девять евро», IIf(Валюта = 1, «девять рублей»«девять долларов»))
Edinicy(11) = «одиннадцать «: EdinicyPoslednie(11) = IIf(Валюта = 0, «одиннадцать евро», IIf(Валюта = 1, «одиннадцать рублей»«одиннадцать долларов»))
Edinicy(12) = «надцать «: EdinicyPoslednie(12) = IIf(Валюта = 0, «надцать евро», IIf(Валюта = 1, «надцать рублей»«надцать долларов»))
Edinicy(13) = «тринадцать «: EdinicyPoslednie(13) = IIf(Валюта = 0, «тринадцать евро», IIf(Валюта = 1, «тринадцать рублей»«тринадцать долларов»))
Edinicy(14) = «четырнадцать «: EdinicyPoslednie(14) = IIf(Валюта = 0, «четырнадцать евро», IIf(Валюта = 1, «четырнадцать рублей»«четырнадцать долларов»))
Edinicy(15) = «пятнадцать «: EdinicyPoslednie(15) = IIf(Валюта = 0, «пятнадцать евро», IIf(Валюта = 1, «пятнадцать рублей»«пятнадцать долларов»))
Edinicy(16) = «шестнадцать «: EdinicyPoslednie(16) = IIf(Валюта = 0, «шестнадцать евро», IIf(Валюта = 1, «шестнадцать рублей»«шестнадцать долларов»))
Edinicy(17) = «семнадцать «: EdinicyPoslednie(17) = IIf(Валюта = 0, «семнадцать евро», IIf(Валюта = 1, «семнадцать рублей»«семнадцать долларов»))
Edinicy(18) = «восемнадцать «: EdinicyPoslednie(18) = IIf(Валюта = 0, «восемнадцать евро», IIf(Валюта = 1, «восемнадцать рублей»«восемнадцать долларов»))
Edinicy(19) = «девятнадцать «: EdinicyPoslednie(19) = IIf(Валюта = 0, «девятнадцать евро», IIf(Валюта = 1, «девятнадцать рублей»«девятнадцать долларов»))
»———————————————
Desyatki(0) = «»: Sotni(0) = «»: tys(0) = «тисячь «: mln(0) = «миллионов «: mlrd(0) = «миллиардов «
Desyatki(1) = «десять «: Sotni(1) = «сто «: tys(1) = «тысяча «: mln(1) = «миллион «: mlrd(1) = «миллиарда «
Desyatki(2) = «двадцать «: Sotni(2) = «двести «: tys(2) = «тысячи «: mln(2) = «миллиона «: mlrd(2) = «миллиарда «
Desyatki(3) = «тридцать «: Sotni(3) = «триста «: tys(3) = «тысячи «: mln(3) = «миллиона «: mlrd(3) = «миллиарда «
Desyatki(4) = «сорок «: Sotni(4) = «четыреста «: tys(4) = «тысячи «: mln(4) = «миллиона «: mlrd(4) = «миллиарда «
Desyatki(5) = «пятьдесят «: Sotni(5) = «пятьсот «: tys(5) = «тысяч «: mln(5) = «миллионов «: mlrd(5) = «миллиардов «
Desyatki(6) = «шестьдесят «: Sotni(6) = «шестьсот «: tys(6) = «тысяч «: mln(6) = «миллионов «: mlrd(6) = «миллиардов «
Desyatki(7) = «семьдесят «: Sotni(7) = «семьсот «: tys(7) = «тысяч «: mln(7) = «миллионов «: mlrd(7) = «миллиардов «
Desyatki(8) = «восемьдесят «: Sotni(8) = «восемьсот «: tys(8) = «тысяч «: mln(8) = «миллионов «: mlrd(8) = «миллиардов «
Desyatki(9) = «девяносто «: Sotni(9) = «девятьсот «: tys(9) = «тысяч «: mln(9) = «миллионов «: mlrd(9) = «миллиардов «
‘———————————————

On Error Resume Next
SumInt = Int(Число)
For x = Len(SumInt) To 1 Step -1
    shag = shag + 1
    Select Case x
        Case 12 ‘ — сотни миллиардов
            vl = Mid(SumInt, shag, 1)
            txt = txt & Sotni(vl)
        Case 11 ‘ — десятки  миллиардов
            vl = Mid(SumInt, shag, 1)
            If vl = «1» And Mid(SumInt, shag + 1, 1) <> 0 Then GoTo 10 Else txt = txt & Desyatki(vl)  ‘ — если конец триады от 11 до 19 то перескакиваем на единицы, иначе — формируем десятки
        Case 10 ‘ — единицы  миллиардов
            vl = Mid(SumInt, shag, 1)
            If shag > 1 Then
                If Mid(SumInt, shag — 1, 1) = 1 Then txt = txt & Edinicy(Mid(SumInt, shag — 1, 2)) & «миллиарда « Else txt = txt & Edinicy(vl) & mlrd(vl) ‘числа в диапозоне от 11 до 19 склоняются на «мільярдов» независимо от последнего числа триады
            Else
                txt = txt & Edinicy(vl) & mlrd(vl)
            End If

‘-КОНЕЦ БЛОКА_______________________

Case 9 ‘ — сотни миллионов
            vl = Mid(SumInt, shag, 1)
            txt = txt & Sotni(vl)
        Case 8 ‘ — десятки  миллионов
            vl = Mid(SumInt, shag, 1)
            If vl = «1» And Mid(SumInt, shag + 1, 1) <> 0 Then GoTo 10 Else txt = txt & Desyatki(vl)  ‘ — если конец триады от 11 до 19 то перескакиваем на единицы, иначе — формируем десятки
        Case 7 ‘ — единицы  миллионов
            vl = Mid(SumInt, shag, 1)
            If shag > 2 Then
                If (Mid(SumInt, shag — 2, 1) = 0 And Mid(SumInt, shag — 1, 1) = 0 And vl = «0»Then GoTo 10
            End If
            If shag > 1 Then
                If Mid(SumInt, shag — 1, 1) = 1 Then txt = txt & Edinicy(Mid(SumInt, shag — 1, 2)) & «миллиона « Else: txt = txt & Edinicy(vl) & mln(vl)  ‘числа в диапозоне от 11 до 19 склоняются на «миллиардов» независимо от последнего числа триады
            Else
                txt = txt & Edinicy(vl) & mln(vl)
            End If
        ‘-КОНЕЦ БЛОКА_______________________

Case 6 ‘ — сотни тысяч
            vl = Mid(SumInt, shag, 1)
            txt = txt & Sotni(vl)
        Case 5 ‘ — десятки  тысяч
            vl = Mid(SumInt, shag, 1)
            If vl = 1 And Mid(SumInt, shag + 1, 1) <> 0 Then GoTo 10 Else txt = txt & Desyatki(vl)  ‘ — если конец триады от 11 до 19 то перескакиваем на единицы, иначе — формируем десятки
        Case 4 ‘ — единицы  тысяч
            vl = Mid(SumInt, shag, 1)
            If shag > 2 Then
                If (Mid(SumInt, shag — 2, 1) = 0 And Mid(SumInt, shag — 1, 1) = 0 And vl = «0»Then GoTo 10
            End If
            Sclon_Tys = Edinicy(vl) & tys(vl) ‘ — вводим переменную Sclon_Tys из-за иного склонения  тысяч в русском языке
            If vl = 1 Then Sclon_Tys = «одна « & tys(vl) ‘ — для тысяч склонение «один» и «два» неприменимо ( поэтому вводим переменную  Sclon_Tys )
            If vl = 2 Then Sclon_Tys = «две « & tys(vl) ‘ — для тысяч склонение «один» и «два» неприменимо ( поэтому вводим переменную  Sclon_Tys )
            If shag > 1 Then
                If Mid(SumInt, shag — 1, 1) = 1 Then Sclon_Tys = Edinicy(Mid(SumInt, shag — 1, 2)) & «тисяч «
            End If
            txt = txt & Sclon_Tys

‘-КОНЕЦ БЛОКА_______________________
        Case 3 ‘ — сотни
            vl = Mid(SumInt, shag, 1)
            txt = txt & Sotni(vl)
        Case 2 ‘ — десятки
            vl = Mid(SumInt, shag, 1)
            If vl = «1» And Mid(SumInt, shag + 1, 1) <> 0 Then GoTo 10 Else txt = txt & Desyatki(vl)  ‘ — если конец триады от 11 до 19 то перескакиваем на единицы, иначе — формируем десятки
        Case 1 ‘ — единицы
            If Mid(SumInt, shag — 1, 1) <> 1 Or Mid(SumInt, shag — 1, 2) = «10» Then vl = Mid(SumInt, shag, 1) Else vl = Mid(SumInt, shag — 1, 2)
                txt = txt & EdinicyPoslednie(vl)

‘-КОНЕЦ БЛОКА_______________________

End Select
10:    Next x
a = Число
b = Int(a)
c = (Round(a — b, 2)) * 100
If c < 10 And c >= 1 Then c = «0» + CStr(c)
If c = 0 Then c = CStr(c) + «0»
d = «»
If Валюта = 1 Then d = «коп.» Else d = «цен.»
If Валюта > 2 Or Валюта < 0 Then MsgBox «Укажите параметр 0-2»
If Валюта > 2 Or Валюта < 0 Then GoTo 11
If Копейки = 0 Then
d = «»
c = «»
End If
If Копейки = 2 Then d = «»
If Копейки > 2 Or Копейи < 0 Then MsgBox «Укажите параметр 0, 1 или 2»
If Копейки > 2 Or Копейки < 0 Then GoTo 11
ЧислоПрописьюВалюта = UCase(Left(txt, 1)) & LCase(Mid(txt, 2)) + » « + CStr(c) + d
11:
End Function

Sub DescribeFunction()
   Dim FuncName As String
   Dim FuncDesc As String
   Dim Category As String
   Dim ArgDesc(1 To 3) As String

 
   FuncName = 

«ЧислоПрописьюВалюта»
   FuncDesc = «Функция преобразовывает число суммы текстовыми словами»
   Category = 1 ‘Text category
   ArgDesc(1) = «Исходная сумма»
   ArgDesc(2) = «(необязательный) Тип отображаемой валюты 0-Евро, 1-Рубли, 2-Доллары.»
   ArgDesc(3) = «(необязательный) Нужны ли копейки: 0-нет, 1-отображать копейи стандартно, 2-отображать только дробную часть (без слов).»

 
   Application.MacroOptions _
      Macro:=FuncName, _
      Description:=FuncDesc, _
      Category:=Category, _
      ArgumentDescriptions:=ArgDesc

End Sub
 

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

Private Sub Workbook_Open()
DescribeFunction
End Sub
 

Кроме того благодаря данному макросу DescribeFunction функция будет доступна в группе: «ФОРМУЛЫ»-«Библиотека функций»-«Финансовые»-«ЧислоПрописьюВалюта»

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

Если мы указываем число (от 0 до 2)в параметре второй функции «ЧислоПрописьюВалюта» то функция автоматически подставит нужную валюту в сумме прописью:

  • 1-рубли;
  • 2-доллары;
  • 0-евро;

Как видите, этот VBA-код макроса преобразует числа в слова. После вставки данного кода в модуль редактора макросов, у нас работает новая функция, которую можно вызвать из мастера (кнопка fx возле строки формул).

Скачать число прописью в Excel руб RUB.

Украинская версия функции ЧислоСловоВалюта для перевода сумм в гривны находиться в следующем файле:

Скачать функцию ЧислоСловоВалюта ГРН UAH

ЧислоСловоВалюта гривня.

Теперь вы можете быстро перевести сумму в слова прописью. Чтобы воспользоваться готовым решением рекомендуем скачать пример числа прописью в Excel. Данный файл содержит уже готовую пользовательскую функцию и VBA-код макроса, который доступен в модуле из редактора.

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

Преобразование числа в текст с функцией текста

Преобразование числа в текст с помощью команды «Форматировать ячейки»

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


Преобразование числа в текст с функцией текста

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

Если вы просто хотите преобразовать число в текст без какого-либо форматирования, вы можете использовать формулу: = ТЕКСТ (A1; «0»);

1. В ячейке E1 введите формулу = ТЕКСТ (A1; «0»).

doc преобразовать число в текст 1

2, Затем нажмите Enter ключ. И выберите ячейку E1, перетащите маркер заполнения по диапазону ячеек, к которому вы хотите применить эту формулу, Смотрите скриншот:

doc преобразовать число в текст 2

Внимание: Поскольку данные представляют собой формулы, вы можете изменить формулы на значения. Скопируйте ячейки и щелкните правой кнопкой мыши то место, куда вы хотите вставить значения, и выберите Специальная вставка> Значения.

Если вы хотите отображать ведущий ноль в числах, вы можете использовать эту формулу: = ТЕКСТ (A1; «00000»); такие как преобразовать 23 в 00023.

Как и в предыдущих шагах, если вы примените эту формулу, вы получите следующий результат:

doc преобразовать число в текст 3

А если вы хотите преобразовать числа в текст, содержащий несколько десятичных цифр, вы можете использовать эту формулу: = ТЕКСТ (A1; «0.000»). Такие как преобразовать 23 в 23.000.

Также с помощью вышеуказанных шагов, если вы примените эту формулу, вы получите результат в виде следующих снимков экрана:

doc преобразовать число в текст 4

Внимание: вы можете определить стиль текста. Например, если вы хотите преобразовать числа в текст в формате телефонного номера, вы можете заменить «000» на «00-00000» или другие.


Конвертируйте или записывайте числа в английскую или китайскую валюту:

Работы С Нами Kutools for Excel‘s Числа в слова в Excel можно писать числа на английском и китайском языках. Например, можно писать «12.75«К»Двенадцать долларов и семьдесят пять центов«.


Преобразование числа в текст с помощью команды «Форматировать ячейки»

Microsoft Excel Формат ячеек Команда также может преобразовывать числа в текст.

1. Выберите числа, которые вы хотите преобразовать в текст.

2. Щелкните выделенный диапазон правой кнопкой мыши и выберите Формат ячейкиs из контекстного меню. Смотрите скриншот:

doc преобразовать число в текст 5

3. В Формат ячеек в диалоговом окне выберите Текст в Категория в поле под Число и нажмите OK кнопка. Смотрите скриншот:

doc преобразовать число в текст 6

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


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

Если у вас есть Kutools for Excel установлен, вам будет проще преобразовать числа в ячейках в текст с Преобразование текста в число.

После установки Kutools for Excel, пожалуйста, сделайте следующее:

1. Выберите диапазон с числами, которые вы хотите преобразовать в текст.

2. Нажмите Кутулс > Содержание > Преобразование текста в число. Смотрите скриншот:

3. В Преобразование текста в число диалоговое окно, проверьте Число в текст вариант, а затем щелкните OK or Применить кнопка. И все числа были преобразованы в текст в исходном диапазоне. Смотрите скриншот:

doc преобразовать число в текст 8

Нажмите, чтобы скачать Kutools for Excel и бесплатная пробная версия прямо сейчас!



Связанная статья:

Как изменить или преобразовать текст в число в Excel?


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

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