Число прописью word
Число или сумма прописью в 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 — сообщите об этом редактору.
Число прописью word
[/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» — тогда что? Да и число может быть «Ноль» (например, остаток суммы оплаты).
Программа «Сумма прописью — Форпост»
На этой странице:
Назначение и возможности программы (версия 5.12)
Программа «Сумма прописью — Форпост» предназначена для совместной работы с редактором MS Word и служит для автоматического формирования в редакторе записи словами денежных сумм в различной валюте, количественных величин с единицей измерения и календарных дат по их числовой записи. Далее формируемый программой результат, предназначенный для вставки в документ, будем называть «расшифровка».
Программа ориентирована на сотрудников занимающихся подготовкой договоров, формированием сопроводительных, финансовых и юридических документов.
Программа предоставляет следующие возможности:
- Автоматически извлекает из текста исходные данные: числа, суммы, даты;
- Формирует расшифровки денежных сумм в различной валюте, количественных величин с единицей измерения и календарных дат из набора стандартных элементов: исходное число и дата, целая и дробная часть числа, элементы даты (день, месяц, год), запись числа/даты и их частей словами, сумма НДС, ставка НДС, произвольный текст и т.п.;
- Автоматически вставляет расшифровку в редактируемый документ по месту нахождения курсора или в другое заранее определённое место;
- Предоставляет пользователю возможность настраивать состав и порядок следования элементов в расшифровке;
- Поддерживает справочник валют и единиц измерения и использование его при формировании расшифровок;
- Формирует расшифровки на русском и английском языках;
- Обеспечивает формирование первой буквы любого элемента расшифровки в виде строчной или прописной.
Настраиваемые параметры программы:
- состав расшифровки;
- округления чисел;
- выделение триад в числах;
- ставка НДС;
- формат исходной даты;
- формат даты в расшифровке;
- привязка валют и единиц измерения к кнопкам и алгоритмам.
Взаимодействие пользователя с программой осуществляется посредством кнопок расположенных на инструментальной панели редактора MS Word. В отношении этой панели пользователю предоставляются следующие возможности:
- Добавление и удаление кнопок предназначенных для формирования различных расшифровок;
- Произвольное количество создаваемых пользователем кнопок как одного, так и разного типа;
- Редактирование надписей на кнопках и контекстных подсказок к кнопкам;
- Настройка быстрого вызова функций кнопок с помощью «горячих» клавиш.
Панель управления программы
После установки программы на вашем компьютере и запуска редактора Word, на вкладке Надстройки (pис. 1) появляется панель управления программы «Сумма прописью — Форпост».
Рис. 1. Размещение панели в MS Word 2007-2010.
Панель обеспечивает взаимодействие пользователя с программой: позволяет добавлять и удалять кнопки, осуществлять формирование расшифровок и настройку правил, по которым они формируются.
Кнопки и алгоритмы
Программа может формировать расшифровки трёх типов: Деньги, Число и Дата.
Формирование расшифровок выполняется по правилам, которые настраиваются пользователем.
В программе существуют два вида правил.
Правила первого вида жёстко связаны с определёнными кнопками и выполняются при нажатии этих кнопок.
Правила второго вида не имеют привязки к кнопкам и существуют самостоятельно. Применительно к программе «Сумма прописью — Форпост» такие правила называются алгоритмами.
Оба вида правил имеют совершенно одинаковые параметры и общие формы для их настройки.
Кнопки панели
Панель программы содержит три системные кнопки ,
и
находящиеся с левого и с правого края панели. Системные кнопки выполняют строго определённые функции, недоступны для настройки пользователем и не могут быть удалены или добавлены.
Системная кнопка служит для индикации текущего языка формирования расшифровки и для переключения с одного языка на другой. При нажатии на кнопку происходит смена надписи на кнопке на
и языком формирования расшифровки становится английский язык. При повторном нажатии на кнопку язык снова становится русским (рис. 2):
Рис. 2. Изменение языка формирования расшифровки.
Кнопка служит для вывода панели с информацией о программе и контактных данных.
Между системными кнопками располагаются функциональные кнопки, предназначенные для формирования расшифровок в месте расположения курсора. Количество функциональных кнопок может быть любое. Они могут добавляться и удаляться с панели самими пользователями. Выполняемые ими действия также настраиваются пользователями. После установки на компьютер, панель программы содержит три функциональные кнопки: ,
и
При нажатии на функциональную кнопку программа анализирует находящийся слева от курсора текст и пытается обнаружить исходные данные. В зависимости от наличия или отсутствия исходных данных и типа кнопки, далее выполняются следующие действия:
Как преобразовать число в текст прописью?
В некоторых бухгалтерских документах первичной отчетности, а также в договорах, доверенностях и других документах можно встретить написание чисел прописью. Расшифровка чисел используется для избежания различного рода проблем, которые могут возникать как по невнимательности, так и по злому умыслу, когда число сознательно искажается путем приписки цифр к сумме, указанной ранее.
Основная масса документов, которую приходится заполнять сотрудникам предприятий — это так называемая «Первичка», или первичные учетные документы (приходные кассовые ордера, квитанции, товарные накладные, счета на оплату и так далее). Правила работы с документами первичной отчетности регламентируются Федеральным законом «О бухгалтерском учете». Многие документы, формы которых утверждены постановлениями Госкомстата РФ содержат не только строки с указанием сумм, но и строки для расшифровки этих сумм прописью, при этом расшифровка является обязательной.
Наряду с бухгалтерскими существуют и другие документы, где присутствует расшифровка суммы, например договор, доверенность или письмо. Порядок расшифровки суммы, указанной в договоре или доверенности Гражданским Кодексом РФ не регламентируется, но правила написания сумм прописью являются общими для всех документов.
Правила написания расшифровки сумм прописью
1. Сначала указывается сумма цифрами, затем эта сумма повторяется прописью;
2. сумма прописью указывается в именительном падеже, при этом прописью указывается только та часть суммы, которая выражена в рублях, копейки обозначаются цифрами;
3. во избежание приписок первое слово в расшифровке прописью необходимо начинать с заглавной буквы.
Надстройка для преобразования числа в текст прописью в Word
Написание расшифровок сумм прописью в бухгалтерских документах, как правило уже автоматизировано в системах учета финансово-хозяйственной деятельности таких как 1-С, SAP ERP и др. Если же какие-то документы формируются в текстовом редакторе Microsoft Word, при этом в документах предусмотрены поля для расшифровки сумм прописью, то автоматизировать их написание можно при помощи надстройки для Word (аналогичная надстройка для Excel).
Надстройка позволяет быстро преобразовать число в текст прописью, для этого нужно выделить число, запустить макрос, при необходимости выбрать нужную валюту (по умолчанию установлены рубли) и нажать ОК. Сумма прописью формируется в соответствии с вышеперечисленными правилами и вставляется сразу после выделенного числового значения.
На выбор пользователя доступны несколько валют: рубли, доллары, евро, гривны и предусмотрен режим «без валюты», когда вместо названия валют прописываются слова «целые» и «сотые» (например, Сорок четыре тысячи шестьсот двадцать целых, 00 сотых). При выборе опции «Все прописью» та часть числа, которая находится после запятой, также прописывается прописью.
Тема: ЧИСЛА — ПРОПИСЬЮ в Word и Excel.
Опции темы
Поиск по теме
ЧИСЛА — ПРОПИСЬЮ в Word и Excel.
Раскопал интересную программу TRANSNUM v.3.3, думаю она пригодится многим, кому лень набивать числа прописью. Вывод на пяти языках, включая русский и украинский. Работает с 7 денежными единицами.
Вывод числа осуществляется или числовом или в денежном формате.
Имеется возможность подсчёта НДС от введённой суммы с её одновременным выводом в документ. Форму вывода НДС можно изменять по своему усмотрению.
Допускается ввод чисел в любой форме, даже написанных вразрядку. Дробные числа округляются до сотых. Числа, записанные в экспоненциальной форме переводятся в обычную. Ввод числа можно выполнить несколькими способами:
Набрать на клавиатуре;
Вставить из Буфера обмена;
Перетащить выделенную в исходном тексте числовую строку, удерживая левую клавишу мышки (drag&drop).
При работе с приложениями MS Office (Word, Excel) перевод числа и вставку прописи в документ можно осуществлять используя Горячие клавиши.
Ввод способом drag&drop может не работать с текстовыми редакторами типа «БЛОКНОТ», не поддерживающих этой функции, но с приложениями MS OFFICE всё получается отлично. Аналогично можно переносить полученную пропись в исходный текст. Для копирования полученного текста в Буфер обмена служит специальная кнопочка.
Программа игнорирует все не относящиеся к числовым символы. Поэтому можете не пытаться перевести в пропись строку «1 ромашка, 2 ромашки». В данном случае Вы увидите — «Одна целая две десятых» или стоимость такой попытки — «Один рубль двадцать копеек». Если же во входной строке окажется несколько символов, соответствущих десятичным разделителям (точек или запятых), то за действительный будет принят самый первый, начиная слевой части строки. То есть, строка «45 руб. 68 коп.» будет совершенно правильно выведена как «Сорок пять рублей шестьдесят восемь копеек», или же «Сорок пять целых шестьдесят восемь сотых», в зависимости от принятых Вами настроек.
Разобраться в назначении элементов управления очень легко — при наведении на любой из них указателя мышки появляется подсказка.
Автоматическая группировка цифр в окне ввода по сотням, тысячам и т.д. с разделением через пробел. Сформированное таким образом число можно также перенести в исходный текст.
Начинать с прописной — первый символ полученной строки выводить с большой буквы;
Все прописные — все буквы выводятся ЗАГЛАВНЫМИ буквами;
Имеется возможность настройки шрифтов при работе с документами Word и Excel.
Различный формат вывода. В числовом формате прописывается, например, «двенадцать целых пять сотых». При установке в денежный формат — «двенадцать рублей 05 копеек»;
Сокращённый вывод. Наименования денежных единиц могут выводиться как в сокращённом (руб., коп.), так и в полном виде (рублей, копеек).
Вывод на различных языках:
— русском;
— украинском;
— английском (USA);
— болгарском;
— немецком.
Для каждого языка можно задать отдельную форму вывода НДС.
Денежные единицы. К прописи можно добавить наименования различных денежных единиц:
— рубль;
— доллар;
— фунт стерлингов;
— евро;
— гривна;
— тенге;
— лев.
Разменные единицы валют (копейки) можно прописать двумя способами:
— 12 копеек, или
— двенадцать копеек.
Пропись можно заключить в круглые скобки.
Перед прописью числа можно добавить любую строку, например: «Итого:»
TRANSNUM является самостоятельной программой, но наиболее эффективна его работа с такими приложениями MS Office, как Word и Excel. При работе с MS Office функционируют «горячие клавиши». Имеется настройка одновременного запуска TRANSNUM с MS Office версии 2000 или старше.
При сворачивании программа прячется в системный лоток (трей).
Скачать: Удалено из-за подозрительности
Пользователям Windows XP с MS Office XP и выше можно скачать дополнительный модуль к программе. При его инсталляции на панели инструментов указанных приложений Office появится кнопка, при нажатии на которую можно запустить Transnum. Таким образом можно отказаться от одновременного запуска приложений Office и Transnum.
Скачать модуль: Удалено из-за подозрительности