Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

В этом выпуске опубликованы следующие советы:


Word Expert - профессиональная работа с текстом

Выпуск рассылки №115 от 2008-09-12 11:55

В этом выпуске:

  1. Советы и подсказки
  2. Полезные ссылки
  3. Информация об авторских правах

Советы и подсказки

Если у вас есть идея или совет по эффективному использованию редактора Word, то пишите мне через форму контактов на сайте. Любые ваши дельные советы и подсказки будут размещены в очередных выпусках рассылки и на сайте (с указанием вашего авторства).

Ключ CardText и его ограничения

Артур задал вопрос:
Я воспользовался вашими советами по переводу числа в режим прописи. Только проблема: команда {=123\CardText} не переводит в пропись числа больше 999 999, то есть при вводе 1.000.000 появляется ошибка! Можно ли что-то сделать?

Напомню, что ключ формата CardText, используемый в полях, предназначен для вывода количественных числительных в текстовом формате. Например, при использовании поля {=236 \*CardText} мы получим следующий результат: двести тридцать шесть.

Однако, при использовании ключа CardText существуют три ограничения:
  1. максимальное число, которое может быть переведено в текстовый формат, не должно быть больше 999.999;
  2. переводимое число не может быть отрицательным;
  3. переводимое число может быть дробным, но при этом результат будет округлен до ближайшего числа (например, результат перевода числа 12,65 - тринадцать).
Если пользователь пренебрежет этими ограничениями, то он получит сообщение об ошибке: Ошибка! Число не может быть представлено в указанном формате.

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

Макрос преобразования числа в текст

На форуме Microsoft был задан вопрос:
Необходимо в тексте Word введенное число преобразовать в текст на русском.

Для того, чтобы преобразовать некое число в текстовый формат, вы можете воспользоваться специальными программами, о которых я писал в заметке Число или сумма прописью.
Но если вам нужно преобразовать уже введенное число, то здесь может помочь следующий макрос (ниже).
В коде макроса используется формула с ключом CardText. Но у этого ключа есть ограничение - максимальное число не может быть больше 999.999 (см. заметку Ключ CardText и его ограничения). Поэтому автор макроса идет на хитрость и объединяет поля. Но в английском языке нет склонений и результат для преобразованного числа получается правильным для чисел свыше 1.000.000 - используется слово "million". В русском языке итоговый результат будет выглядеть не очень красиво. Поэтому я чуть-чуть подредактировал макрос, заменив слово "million" на "миллион(а/ов)". Тоже не совсем нормально но, по крайней мере, не так режет глаз грамматической неправильностью.

Код макроса:
Sub BigCardText()
'преобразование целого числа в текстовый эквивалент
'источник - http://wordtips.vitalnews.com/Pages/T000203_Converting_Numbers_to_Text.html
Dim sDigits As String
Dim sBigStuff As String
sBigStuff = ""
' Select the full number in which the insertion point is located
Selection.MoveLeft Unit:=wdWord, Count:=1, Extend:=wdMove
Selection.MoveRight Unit:=wdWord, Count:=1, Extend:=wdExtend
' Store the digits in a variable
sDigits = Trim(Selection.Text)
If Val(sDigits) > 999999 Then
    If Val(sDigits) <= 999999999 Then
        sBigStuff = CStr(Val(sDigits) \ 1000000)
        ' Create a field containing the big digits and
        ' the cardtext format flag
        Selection.Fields.Add Range:=Selection.Range, _
          Type:=wdFieldEmpty, Text:="= " + sBigStuff + " \* CardText", _
          PreserveFormatting:=True
        ' Select the field and copy it
        Selection.MoveLeft Unit:=wdWord, Count:=1, Extend:=wdExtend
        sBigStuff = Selection.Text & " миллион(а/ов) "
        sDigits = Right(sDigits, 6)
    End If
End If
If Val(sDigits) <= 999999 Then
    ' Create a field containing the digits and the cardtext format flag
    Selection.Fields.Add Range:=Selection.Range, _
      Type:=wdFieldEmpty, Text:="= " + sDigits + " \* CardText", _
      PreserveFormatting:=True

    ' Select the field and copy it
    Selection.MoveLeft Unit:=wdWord, Count:=1, Extend:=wdExtend
    sDigits = sBigStuff & Selection.Text

    ' Now put the words in the document
    Selection.TypeText Text:=sDigits
    Selection.TypeText Text:=" "
Else
    MsgBox "Число слишком большое для преобразования", vbOKOnly
End If
End Sub
Если вы не знаете, как подключить к документу и применить этот макрос, изучите следующие заметки с сайта:
Создание макроса из готового кода
Автоматическая запись макроса

Оставить комментарий | Задать вопрос

У меня постоянно появляются ошибки «недостаточно памяти»

Как я и обещал, публикую очередную переводную статью от Бюро переводов AGI Triple.

Автор статьи: Бет Мелтон (Beth Melton)
Источник: I keep getting ‘insufficient memory’ errors


Избавьтесь от Nimda
Если вы постоянно сталкиваетесь с ошибками, связанными с «недостаточными ресурсами» или «недостаточной памятью», то, в первую очередь, вы должны избавиться от вируса под названием Nimda. Одним из файлов, который атакует этот вирус, является Riched20.dll. Этот файл используется MS Word для формата Rich text. Соответственно, без этого файла Word не может нормально функционировать.
Получить больше информации от Symantec о вирусе, а также инструмент для его уничтожения вы можете здесь: W32.Nimda.A@mm.
Убедитесь, что вы не забыли выполнить пункт по поводу извлечения нового файла Riched20.dll: этот пункт часто забывают выполнять.
Даже если ваш антивирус не регистрирует наличие вируса в системе, вам, возможно, все равно придется извлечь новый Riched20.dll, так как были случаи, когда извлечение нового DLL решали проблему, даже если Nimda и не был обнаружен. Мне кажется, что это связано с тем, что вирус уже удален и больше не может действовать, но поврежденный файл Riched20.dll не был заменен.
Читать статью целиком... | Задать вопрос

Как изменить цвет гиперссылки

Вопрос был задан на форуме Microsoft:
При написании документа в Ворде гиперссылки на web страницы автоматически выделяются серым цветом. Где можно поменять это автоматическое выделение на другой цвет?

Человек, ответивший на этот вопрос, дал ссылку на англоязычный ресурс - http://kb.iu.edu/data/ahbl.html. И на самом деле, изменить цвет гиперссылки просто - достаточно изменить стиль, соответствующий гиперссылкам. Если в вашем документе уже присутствуют ссылки, то в списке стилей вы найдете и стиль для них (рисунок).

Если область задач Стили и форматирование (для Word 2003) не отображается, то в меню Формат выберите команду Стили и форматирование, а если вы используете редактор Word 2007, то воспользуйтесь либо горячими клавишами «Ctrl»+«Shift»+«Alt»+«S», либо на вкладке Главная в группе команд Стили нажмите кнопку вызова диалоговых окон (рисунок).

Теперь наведите указатель мыши на стиль гиперссылки - появится обрамление у стиля - и щелкните правой кнопкой мыши на стиле. В раскрывшемся контекстном меню выберите команду Изменить, чтобы открылось диалоговое окно Изменение стиля.

В диалоговом окне нажмите кнопку Формат и в подменю выберите команду Шрифт. В редакторе Word 2003 откроется одноименное диалоговое окно, в котором измените цвет ссылок в поле Цвет текста. А в редакторе Word 2007 можно просто изменить цвет в поле Цвет текста, которое доступно здесь же - в окне Изменение стиля.
Теперь закройте диалоговые окна и в результате цвет всех гиперссылок в вашем документе будет изменен.
Оставить комментарий | Задать вопрос

Полезные ссылки

Информация об авторских правах

Вся информация, представленная на сайте WordExpert.ru и в этой рассылке, никаким образом не связана с корпорацией Microsoft. В рассылке упоминаются компании и продукты, которые могут быть зарегистрированными торговыми марками и принадлежать различным физическим и юридическим лицам как на территории РФ, так и за ее пределами.

Авторские права на все материалы, опубликованные на сайте WordExpert.ru и в этой рассылке (включая текст, фотографии, подборку, расположение и т.п.) принадлежат Кокину Антону Вадимовичу, если не указано иное. Вы можете свободно использовать и распространять эти материалы с обязательной ссылкой вида "Информация с сайта WordExpert.ru" и с обязательным указанием автора материала.

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

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


В избранное