Сумма прописью для word 2020
Число или сумма прописью в Word (download)
Знаете ли вы, как можно в текстовом редакторе Word цифры, числа или суммы представить прописью? Например так: 1.290 = Одна тысяча двести девяносто?
Я вижу две возможности: с помощью полей (с соответствующими ключами) Word или воспользоваться готовыми специализированными программами (в том числе и макросами).
Рассмотрим первый вариант.
ПОЛЯ Word — набор кодов (инструкций), обеспечивающих автоматическую вставку в документ текста, рисунков, номеров страниц и других сведений (из справки MS Word).
Широко известен такой способ: создаем или открываем документ и в том месте, где необходимо вывести числовое значение прописью, ставим курсор и нажимаем комбинацию клавиш Ctrl + F9. В тексте появится затененное поле с фигурными скобками:
Внутри фигурных скобок вставьте следующую конструкцию (я показываю вместе со скобками):
, где 1290 — это любое ваше число (не забывайте про знак равенства перед числом), *CardText — это ключ поля (о нем будет сказано ниже).
Затем нажмите клавишу F9. В результате вы увидите представленное прописью ваше число, в данном случае — одна тысяча двести девяносто.
Обратите внимание на следующий момент: если вы используете локализованную (русскую) версию редактора Word, то цифры будут представлены прописью по-русски. Если редактор англоязычный, то и вывод чисел прописью будет на этом языке. Возможна ситуация, когда в локализованной версии Word цифры выводятся по-английски. Значит, раскладка клавиатуры в редакторе в данный момент не русская, а английская.
КЛЮЧ — особая инструкция, которая при помещении в поле вызывает выполнение определенного действия. Например, вставка в поле ключа * Caps определяет, что первая буква каждого слова в значении поля прописная (из справки MS Word).
В нашем примере мы использовали ключ *CardText. У Word множество различных ключей. Естественно, что знать их все на память нереально, да и не нужно. А в случае необходимости можно обратиться на официальный сайт Microsoft в раздел справочной информации.
Этот ключ выводит результат в виде количественных числительных (записанных словами). По умолчанию используются строчные буквы. Можно дополнительно в поле вставить другие ключи, например ключ * Upper (преобразовывает все буквы в прописные, то есть заглавные), или ключ * FirstCap (преобразует первую букву первого слова в прописную).
Если вам необходимо вывести число не арабскими цифрами, а римскими, то для этих целей служит ключ *roman. Здесь тоже есть небольшая хитрость: регистр выводимого числа будет именно такой, каким вы введете ключ *roman. Если так: *roman — то и результат будет в строчных буквах, если так: *ROMAN — то соответственно результат будет выведен заглавными буквами.
Понятно, что использовать в своей работе эти поля не очень удобно, особенно, когда вам нужно очень часто преобразовывать цифры в строки. Здесь на помощь приходят специальные программы, коих много создано.
Я кратко опишу только некоторые программы, которые показались мне достаточно удобными в использовании.
Начну с программы TRANSNUM — число прописью.
Достаточно интересная программа, работающая с MS Word и MS Excel. Полностью самостоятельная программа, становящаяся полупрозрачной, когда вы переносите фокус на редактор.
Корректно работает со всеми версиями Word, кроме Word 2007.
Другая программа — R2S (Сумма прописью). Программа старенькая и разрабатывалась для конкурсной программы Microsoft Office Extensions. Бесплатная.
Возможности:
Преобразовывает числовой формат суммы вида 123-45 или 123,45 в прописной вида 123-45 (Сто двадцать три рубля 45 копеек) или 123,45 (Ста двадцати трёх долларов 45 центов). Возможные падежи: Именительный, Родительный. Валюты: Рубли, Доллары.
Работает без ошибок с MS Word 2002 (проверено). C версиями Word 2003 и Word 2007 работает только в режиме буферного обмена.
Следующая программа — макрос Num2String, преобразующая числа в текстовые представления.
В принципе позволяет даже вывести на панель инструментов свою кнопку, но при установке выводит сообщения об ошибках в коде макроса. В чем там именно проблема я не разбирался, так как не являюсь специалистом в VB.
Надеюсь, что эта статья поможет вам сориентироваться и выбрать наиболее подходящий способ перевода чисел, цифр или сумм в строковые представления.
Если у вас есть дополнения к статье — прошу вас высказаться ниже — в комментариях.
В каталоге Download Вы можете найти другие полезные материалы — утилиты, программы, документацию, исходники, электронные книги. Если Вы обнаружили неработающую ссылку, пожалуйста, помогите другим посетителям и администратору каталога Download — сообщите об этом редактору.
Число прописью в Excel: инструкция, как написать сумму
Сумма прописью в Excel
NewsBar Windows: нон-стоп новости 24/7
Windows 10 выводит из строя Mac: Microsoft признал вину, но что дальше?
Плановая переустановка Виндовс 7 на 10: мошенники против пенсионеров
Полноэкранная реклама от Windows — раздражающая новинка, которую можно и нужно отключить
Киберкоронавирус в сети: конверты с бубонной чумой уже в сети. Вы готовы?
Во многих документах мы можем видеть строку, в которой требуется указать сумму не в числовом виде, а прописью. Это защищает отчетность от подделки, ведь цифру легко переправить. А вот длинную запись незаметно исправить не так-то просто. Сумма прописью в Excel доступна только в виде надстроек или с использованием формул. Встроенного инструмента не имеется.
Как в Excel сделать сумму прописью
Чтобы получить эту возможность, вы можете скачать надстройку «Сумма прописью» в Excel бесплатно на нашем сайте.
Разместите его в любом удобном каталоге и подключите. Для этого следует пройти следующие этапы:
- Запустите Excel и нажмите «Файл».
- Щелкните на параметры.
- Далее переходите в надстройки.
И кликайте по кнопке «Перейти». - Чтобы подгрузить скачанный файл жмите «Обзор».
- И ищите его в папке, куда сохраняли. Вам предложат скопировать файл в папку надстроек, рекомендуем согласиться. Так Excel всегда будет видеть эту надстройку и вы легко найдете функцию для суммы прописью.
- Нужная библиотека Excel подключена. Галочка означает, что ее можно использовать. Жмите ОК.
- Нужные действия реализованы в виде функции СУММА_ПРОПИСЬЮ. Чтобы применить ее, введите в ячейку A1 число и установите указатель рядом, на B1. Нажмите значок Fx около строки формул.
- И в полном алфавитном перечне найдите функцию СУММА_ПРОПИСЬЮ. Рекомендуем начать печатать название. В таком случае Excel сам перемотает ближе к нужному разделу.
- Жмите ОК и в окне мастера укажите адрес A1. Можно просто мышкой кликнуть по ячейке.
- После нажатия ОК вы увидите сумму прописью.
Эта функция «сумма_прописью» работает в Excel 2007, 2010, 2016
Данная надстройка работает только для рублей. Если вам нужна другая валюта, скачайте еще файл sumprop.xla. Действуя по аналогии подключите надстройку для получения суммы прописью в Excel.
Для проверки введем в ячейке A3 произвольное число. Пусть это будет десятичная дробь. Также вызовем окно вставки функций и найдем новые функции для вывода суммы прописью.
Как видите, нам стали доступны:
- Сумма Прописью
- Сумма Прописью Доллары
- Сумма Прописью Евро
- Сумма Прописью Евро
Переведем число в евро. Выбираем соответствующую функцию и кликаем по ячейке с числом.
После нажатия ОК получаем результат.
С помощью этих инструментов преобразование числа в текст прописью в Excel выполняется очень просто. Если по каким-то причинам вы не хотите устанавливать их в Excel, можно воспользоваться другим способом.
Формула суммы прописью в Excel — как написать число
Для вывода числа прописью в Excel можно создать формулу. Приведем пример:
Для ее использования вам необходимо указать несколько массивов Excel:
Просто скопируйте эту таблицу на лист 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 вставьте новый модуль.
В него добавьте следующий код.
Теперь эту функцию можно вызвать обычным путем и получить сумму прописью. Она находится в разделе функций Excel «Определенные пользователем».
В качестве аргумента укажите адрес с числом.
Перевод в сумму прописью осуществляется только для целых чисел.
Дробное число требует дополнительной формулы:
Вместо ячейки A7 подставляйте свой адрес. Копейки в таком исполнении будут выводиться в виде числа.
Мы рассмотрели все способы представления суммы прописью в Excel. Выбирайте для себя самый удобный и пользуйтесь с удовольствием!
Программа «Сумма прописью — Форпост»
На этой странице:
Назначение и возможности программы (версия 5.12)
Программа «Сумма прописью — Форпост» предназначена для совместной работы с редактором MS Word и служит для автоматического формирования в редакторе записи словами денежных сумм в различной валюте, количественных величин с единицей измерения и календарных дат по их числовой записи. Далее формируемый программой результат, предназначенный для вставки в документ, будем называть «расшифровка».
Программа ориентирована на сотрудников занимающихся подготовкой договоров, формированием сопроводительных, финансовых и юридических документов.
Программа предоставляет следующие возможности:
- Автоматически извлекает из текста исходные данные: числа, суммы, даты;
- Формирует расшифровки денежных сумм в различной валюте, количественных величин с единицей измерения и календарных дат из набора стандартных элементов: исходное число и дата, целая и дробная часть числа, элементы даты (день, месяц, год), запись числа/даты и их частей словами, сумма НДС, ставка НДС, произвольный текст и т.п.;
- Автоматически вставляет расшифровку в редактируемый документ по месту нахождения курсора или в другое заранее определённое место;
- Предоставляет пользователю возможность настраивать состав и порядок следования элементов в расшифровке;
- Поддерживает справочник валют и единиц измерения и использование его при формировании расшифровок;
- Формирует расшифровки на русском и английском языках;
- Обеспечивает формирование первой буквы любого элемента расшифровки в виде строчной или прописной.
Настраиваемые параметры программы:
- состав расшифровки;
- округления чисел;
- выделение триад в числах;
- ставка НДС;
- формат исходной даты;
- формат даты в расшифровке;
- привязка валют и единиц измерения к кнопкам и алгоритмам.
Взаимодействие пользователя с программой осуществляется посредством кнопок расположенных на инструментальной панели редактора MS Word. В отношении этой панели пользователю предоставляются следующие возможности:
- Добавление и удаление кнопок предназначенных для формирования различных расшифровок;
- Произвольное количество создаваемых пользователем кнопок как одного, так и разного типа;
- Редактирование надписей на кнопках и контекстных подсказок к кнопкам;
- Настройка быстрого вызова функций кнопок с помощью «горячих» клавиш.
Панель управления программы
После установки программы на вашем компьютере и запуска редактора Word, на вкладке Надстройки (pис. 1) появляется панель управления программы «Сумма прописью — Форпост».
Рис. 1. Размещение панели в MS Word 2007-2010.
Панель обеспечивает взаимодействие пользователя с программой: позволяет добавлять и удалять кнопки, осуществлять формирование расшифровок и настройку правил, по которым они формируются.
Кнопки и алгоритмы
Программа может формировать расшифровки трёх типов: Деньги, Число и Дата.
Формирование расшифровок выполняется по правилам, которые настраиваются пользователем.
В программе существуют два вида правил.
Правила первого вида жёстко связаны с определёнными кнопками и выполняются при нажатии этих кнопок.
Правила второго вида не имеют привязки к кнопкам и существуют самостоятельно. Применительно к программе «Сумма прописью — Форпост» такие правила называются алгоритмами.
Оба вида правил имеют совершенно одинаковые параметры и общие формы для их настройки.
Кнопки панели
Панель программы содержит три системные кнопки ,
и
находящиеся с левого и с правого края панели. Системные кнопки выполняют строго определённые функции, недоступны для настройки пользователем и не могут быть удалены или добавлены.
Системная кнопка служит для индикации текущего языка формирования расшифровки и для переключения с одного языка на другой. При нажатии на кнопку происходит смена надписи на кнопке на
и языком формирования расшифровки становится английский язык. При повторном нажатии на кнопку язык снова становится русским (рис. 2):
Рис. 2. Изменение языка формирования расшифровки.
Кнопка служит для вывода панели с информацией о программе и контактных данных.
Между системными кнопками располагаются функциональные кнопки, предназначенные для формирования расшифровок в месте расположения курсора. Количество функциональных кнопок может быть любое. Они могут добавляться и удаляться с панели самими пользователями. Выполняемые ими действия также настраиваются пользователями. После установки на компьютер, панель программы содержит три функциональные кнопки: ,
и
При нажатии на функциональную кнопку программа анализирует находящийся слева от курсора текст и пытается обнаружить исходные данные. В зависимости от наличия или отсутствия исходных данных и типа кнопки, далее выполняются следующие действия:
Сумма, число прописью
Число или сумма текстом:
Прописью
Рады приветствовать Вас на нашем сервисе число прописью!
На нашем сайте Вы можете сгенерировать или найти в базе правильное написание чисел прописью а также можно конвертировать написания денег прописью.
Денежную сумму прописью можно конвертировать на трех языках (русский, английский, украинский) с возможностью включения в сумму трех ставок НДС разных стран, также доступны три валюты: рубль, доллар, гривна.
У нас на данный момент доступно конвертирование чисел и сумм от 1 до 1 000 000, а также есть база данных написания чисел прописью.
Числа от 2000 до 2049 прописью
Числа прописью из диапазона: 2000-2049
2000 прописью:
2000 прописью на английском: in words 2000 — Two thousand
2000 прописью на украинском: прописом 2000 — Дві тисячі
2001 прописью:
Две тысячи один
2001 прописью на английском: in words 2001 — Two thousand one
2001 прописью на украинском: прописом 2001 — Дві тисячі один
2002 прописью:
2002 прописью на английском: in words 2002 — Two thousand two
2002 прописью на украинском: прописом 2002 — Дві тисячі два
2003 прописью:
2003 прописью на английском: in words 2003 — Two thousand three
2003 прописью на украинском: прописом 2003 — Дві тисячі три
2004 прописью:
Две тысячи четыре
2004 прописью на английском: in words 2004 — Two thousand four
2004 прописью на украинском: прописом 2004 — Дві тисячі чотири
2005 прописью:
Две тысячи пять
2005 прописью на английском: in words 2005 — Two thousand five
2005 прописью на украинском: прописом 2005 — Дві тисячі п’ять
2006 прописью:
Две тысячи шесть
2006 прописью на английском: in words 2006 — Two thousand six
2006 прописью на украинском: прописом 2006 — Дві тисячі шість
2007 прописью:
Две тысячи семь
2007 прописью на английском: in words 2007 — Two thousand seven
2007 прописью на украинском: прописом 2007 — Дві тисячі сім
2008 прописью:
Две тысячи восемь
2008 прописью на английском: in words 2008 — Two thousand eight
2008 прописью на украинском: прописом 2008 — Дві тисячі вісім
2009 прописью:
Две тысячи девять
2009 прописью на английском: in words 2009 — Two thousand nine
2009 прописью на украинском: прописом 2009 — Дві тисячі дев’ять
2010 прописью:
Две тысячи десять
2010 прописью на английском: in words 2010 — Two thousand ten
2010 прописью на украинском: прописом 2010 — Дві тисячі десять
2011 прописью:
Две тысячи одиннадцать
2011 прописью на английском: in words 2011 — Two thousand eleven
2011 прописью на украинском: прописом 2011 — Дві тисячі одинадцять
2012 прописью:
Две тысячи двенадцать
2012 прописью на английском: in words 2012 — Two thousand twelve
2012 прописью на украинском: прописом 2012 — Дві тисячі дванадцять
2013 прописью:
Две тысячи тринадцать
2013 прописью на английском: in words 2013 — Two thousand thirteen
2013 прописью на украинском: прописом 2013 — Дві тисячі тринадцять
2014 прописью:
Две тысячи четырнадцать
2014 прописью на английском: in words 2014 — Two thousand fourteen
2014 прописью на украинском: прописом 2014 — Дві тисячі чотирнадцять
2015 прописью:
Две тысячи пятнадцать
2015 прописью на английском: in words 2015 — Two thousand fifteen
2015 прописью на украинском: прописом 2015 — Дві тисячі п’ятнадцять
2016 прописью:
Две тысячи шестнадцать
2016 прописью на английском: in words 2016 — Two thousand sixteen
2016 прописью на украинском: прописом 2016 — Дві тисячі шістнадцять
2017 прописью:
Две тысячи семнадцать
2017 прописью на английском: in words 2017 — Two thousand seventeen
2017 прописью на украинском: прописом 2017 — Дві тисячі сімнадцять
2018 прописью:
Две тысячи восемнадцать
2018 прописью на английском: in words 2018 — Two thousand eighteen
2018 прописью на украинском: прописом 2018 — Дві тисячі вісімнадцять
2019 прописью:
Две тысячи девятнадцать
2019 прописью на английском: in words 2019 — Two thousand nineteen
2019 прописью на украинском: прописом 2019 — Дві тисячі дев’ятнадцять
2020 прописью:
Две тысячи двадцать
2020 прописью на английском: in words 2020 — Two thousand twenty
2020 прописью на украинском: прописом 2020 — Дві тисячі двадцять
2021 прописью:
Две тысячи двадцать один
2021 прописью на английском: in words 2021 — Two thousand twenty-one
2021 прописью на украинском: прописом 2021 — Дві тисячі двадцять один
2022 прописью:
Две тысячи двадцать два
2022 прописью на английском: in words 2022 — Two thousand twenty-two
2022 прописью на украинском: прописом 2022 — Дві тисячі двадцять два
2023 прописью:
Две тысячи двадцать три
2023 прописью на английском: in words 2023 — Two thousand twenty-three
2023 прописью на украинском: прописом 2023 — Дві тисячі двадцять три
2024 прописью:
Две тысячи двадцать четыре
2024 прописью на английском: in words 2024 — Two thousand twenty-four
2024 прописью на украинском: прописом 2024 — Дві тисячі двадцять чотири
2025 прописью:
Две тысячи двадцать пять
2025 прописью на английском: in words 2025 — Two thousand twenty-five
2025 прописью на украинском: прописом 2025 — Дві тисячі двадцять п’ять
2026 прописью:
Две тысячи двадцать шесть
2026 прописью на английском: in words 2026 — Two thousand twenty-six
2026 прописью на украинском: прописом 2026 — Дві тисячі двадцять шість
2027 прописью:
Две тысячи двадцать семь
2027 прописью на английском: in words 2027 — Two thousand twenty-seven
2027 прописью на украинском: прописом 2027 — Дві тисячі двадцять сім
2028 прописью:
Две тысячи двадцать восемь
2028 прописью на английском: in words 2028 — Two thousand twenty-eight
2028 прописью на украинском: прописом 2028 — Дві тисячі двадцять вісім
2029 прописью:
Две тысячи двадцать девять
2029 прописью на английском: in words 2029 — Two thousand twenty-nine
2029 прописью на украинском: прописом 2029 — Дві тисячі двадцять дев’ять
2030 прописью:
Две тысячи тридцать
2030 прописью на английском: in words 2030 — Two thousand thirty
2030 прописью на украинском: прописом 2030 — Дві тисячі тридцять
2031 прописью:
Две тысячи тридцать один
2031 прописью на английском: in words 2031 — Two thousand thirty-one
2031 прописью на украинском: прописом 2031 — Дві тисячі тридцять один
2032 прописью:
Две тысячи тридцать два
2032 прописью на английском: in words 2032 — Two thousand thirty-two
2032 прописью на украинском: прописом 2032 — Дві тисячі тридцять два
2033 прописью:
Две тысячи тридцать три
2033 прописью на английском: in words 2033 — Two thousand thirty-three
2033 прописью на украинском: прописом 2033 — Дві тисячі тридцять три
2034 прописью:
Две тысячи тридцать четыре
2034 прописью на английском: in words 2034 — Two thousand thirty-four
2034 прописью на украинском: прописом 2034 — Дві тисячі тридцять чотири
2035 прописью:
Две тысячи тридцать пять
2035 прописью на английском: in words 2035 — Two thousand thirty-five
2035 прописью на украинском: прописом 2035 — Дві тисячі тридцять п’ять
2036 прописью:
Две тысячи тридцать шесть
2036 прописью на английском: in words 2036 — Two thousand thirty-six
2036 прописью на украинском: прописом 2036 — Дві тисячі тридцять шість
2037 прописью:
Две тысячи тридцать семь
2037 прописью на английском: in words 2037 — Two thousand thirty-seven
2037 прописью на украинском: прописом 2037 — Дві тисячі тридцять сім
2038 прописью:
Две тысячи тридцать восемь
2038 прописью на английском: in words 2038 — Two thousand thirty-eight
2038 прописью на украинском: прописом 2038 — Дві тисячі тридцять вісім
2039 прописью:
Две тысячи тридцать девять
2039 прописью на английском: in words 2039 — Two thousand thirty-nine
2039 прописью на украинском: прописом 2039 — Дві тисячі тридцять дев’ять
2040 прописью:
Две тысячи сорок
2040 прописью на английском: in words 2040 — Two thousand forty
2040 прописью на украинском: прописом 2040 — Дві тисячі сорок
2041 прописью:
Две тысячи сорок один
2041 прописью на английском: in words 2041 — Two thousand forty-one
2041 прописью на украинском: прописом 2041 — Дві тисячі сорок один
2042 прописью:
Две тысячи сорок два
2042 прописью на английском: in words 2042 — Two thousand forty-two
2042 прописью на украинском: прописом 2042 — Дві тисячі сорок два
2043 прописью:
Две тысячи сорок три
2043 прописью на английском: in words 2043 — Two thousand forty-three
2043 прописью на украинском: прописом 2043 — Дві тисячі сорок три
2044 прописью:
Две тысячи сорок четыре
2044 прописью на английском: in words 2044 — Two thousand forty-four
2044 прописью на украинском: прописом 2044 — Дві тисячі сорок чотири
2045 прописью:
Две тысячи сорок пять
2045 прописью на английском: in words 2045 — Two thousand forty-five
2045 прописью на украинском: прописом 2045 — Дві тисячі сорок п’ять
2046 прописью:
Две тысячи сорок шесть
2046 прописью на английском: in words 2046 — Two thousand forty-six
2046 прописью на украинском: прописом 2046 — Дві тисячі сорок шість
2047 прописью:
Две тысячи сорок семь
2047 прописью на английском: in words 2047 — Two thousand forty-seven
2047 прописью на украинском: прописом 2047 — Дві тисячі сорок сім
2048 прописью:
Две тысячи сорок восемь
2048 прописью на английском: in words 2048 — Two thousand forty-eight
2048 прописью на украинском: прописом 2048 — Дві тисячі сорок вісім
2049 прописью:
Две тысячи сорок девять
2049 прописью на английском: in words 2049 — Two thousand forty-nine
2049 прописью на украинском: прописом 2049 — Дві тисячі сорок дев’ять
Сумма прописью для word 2020
[/vba]
И всё бы, наверное, и ничего, да вот только триады цифр в документе для читабельности обычно разбиваются пробелом. А с пробелами не пашет.
Попытался тупо заменить пробел на «пустышку» Replace’ом в Selection.Range.Text — не вышло — макрос стал давать ошибку в формуле.
Я объектную модель Ворда практически не знаю. Тыкаю почти наугад по аналогии с Excel’ем
Конечно, идеалом было бы допилить макрос так, чтобы он ПОСЛЕ (а не ВМЕСТО) выделенного числа выдавал его же прописью, но это уже не так важно.
Poltava, спасибо за совет и попытку помочь.
А со вставкой после подождём, может быть кто-нибудь из более продвинутых в Ворде чем мы откликнется.
А то, глядишь, и сумму прописью от МСН прикрутим чтобы снять ограничения
200?’200px’:»+(this.scrollHeight+5)+’px’);»>
Public Sub test3()
Dim pReg As Object
Dim numField As Field
Dim numText As String
If Selection.Characters.Count > 1 Then
Set pReg = CreateObject(«VBScript.RegExp»)
pReg.Global = True: pReg.Pattern = «[^d]+»
numText = pReg.Replace(Selection.Text, «»)
If Len(numText) > 0 Then
Selection.MoveRight Count:=1
Selection.TypeText » »
Set numField = Selection.Fields.Add(Selection.Range, wdFieldEmpty, «=» & numText & «*CardText», False)
numField.Update
End If
End If
End Sub
200?’200px’:»+(this.scrollHeight+5)+’px’);»> With Selection
.MoveStartWhile «0123456789 » & Chr(160), wdBackward
.MoveEndWhile «0123456789 » & Chr(160), wdForward
nValue1 = Val(Replace(Replace(.Text, » «, «»), Chr(160), «»))
nShift = .MoveEndWhile(«0123456789.,-=», wdForward)
nValue2 = IIf(nShift > 0, Val(Right(.Text, nShift — 1)), 0)
.Start = .End
.TypeText » (»
.Fields.Add .Range, wdFieldEmpty, «=» & nValue1 & » * CardText * FirstCap», True
.TypeText » руб. » & Format(nValue2, «00») & » коп.)»
End With
Народ, спасибо за отзывы.
К сожалению, уже опять меня настиг завал на работе и разбираться совершенно некогда.
А внутренние средства Ворда я для того применил, т.к. была задумка чтобы сумма прописью вводилась макросом как поле, вычисляемое по сумме цифрами, которую можно было бы потом спокойно изменять в ручную (ну как у нас, нормальных в Excel’e формула, использующая UDF).
Хотя всё-таки не удержался и проверил вариант от RAN
Андрей! Спасибо большое. Отлично работает!
[/vba]даёт инвалид-аргумент при выделенном 123456 на листе
[offtop]А объектную модель-то Ворда, оказывается кто-то всё-таки знает.
Столько абсолютно ничего не говорящих мне свойств, методов и параметров в коде![/offtop]
[/vba]
так сильно влом?
Из опыта — долго искал (в большом макросе), почему не работает. Оказалось — преобразовывает не правильно.
А если не выделять ничего? Просто курсор поставить «посреди» числа?
Я больше ориентировался на то, чтобы не заставлять пользователя выделять число (и ещё обычно при ручном выделении дефолтный Expand срабатывает, расширяя область выделения по своему разумению).
По ошибке — это Word VBA, гад, всё равно считает в Left(,-1) в IIF() . можно сделать
[vba]
Что касается «сумма вводилась как поле» — она и так вводится в поле. Поэтому, кстати, исходный вариант и предполагал замену текста полем, чтобы число оставалось единственным. А чтобы можно было «менять сумму», не заходя в поле — надо либо текст преобразовать в поле с меткой (закладкой), на которую потом будет ссылаться сумма прописью, либо отслеживать изменение текста и перезаписывать/пересоздавать поле с прописью.
Ещё хочу заметить — .MoveRight Unit:=wdWord сдвинет точку ввода хоть и на конец цифр — но там может стоять разделитель Например, сумма записана (как это любят бухи) «123456=00» — тогда что? Да и число может быть «Ноль» (например, остаток суммы оплаты).