2

Один мой немецкий коллега прислал мне документ Word для редактирования в Word 2010. Когда я пытаюсь обозначить фигуру, я вижу следующие варианты метки:

  • Abbildung
  • Формель
  • Tabelle

Как мне сказать Word, чтобы представить мне варианты на английском языке?

Если я начну новый документ, варианты будут представлены на английском языке, поэтому я не думаю, что здесь есть общесистемная проблема. Ниже приведен скриншот моих языковых настроек, полученный на вкладке «Обзор» → «Язык» → «Языковые настройки» ...

языковые предпочтения

Выглядит довольно здорово для меня. Любые идеи, как я могу решить эту проблему?

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

1 ответ1

4

Открыв документ, перейдите в VB Editor и создайте следующий Sub. Возможно, вам придется выбрать шаблон Normal и использовать Insert-> Module, чтобы создать где-нибудь, куда вы можете вставить код. Замените идентификатор языка / версии, который вы действительно хотите. Если это не wdEnglishUS, вы можете удалить "= wdEnglishUS" и начать перепечатывать. Когда вы вводите = , VB Editor должен представить список.

Sub changeLanguage()
    ActiveDocument.Content.LanguageID = wdEnglishUS
End Sub

Запустите код, нажав F5. Это должно переключить любые новые подписи на те, которые вы хотите на английском языке. Проблема в том, что никакое такое изменение не изменит существующие подписи. Для этого вам нужно будет найти / заменить. Названия подписей используются в нескольких местах:

  • сами подписи
  • поля {SEQ}, используемые для вставки порядкового номера заголовка. Убедитесь, что вы используете Alt-F9 для отображения этих кодов полей перед выполнением поиска / замены.
  • любое поле {TOC} в документе, используемом для вставки списка рисунков

К тому же... Word не отображается для обновления текста результата поля при указании «выше / ниже», даже если вы изменили основной язык редактирования на тот, который вы хотите. Следующий фрагмент VBA пытается заменить все поля REF, пытаясь заставить Word изменить эти результаты. Это не было проверено много.

Sub replaceRefFields()
Dim f As Word.Field
Dim l As Long
Dim r As Word.Range
Dim s As String
With ActiveDocument
  For l = .Fields.Count To 1 Step -1
    With .Fields(l)
      If .Type = wdFieldRef Then
        Set r = .Result
        s = .Code
        .Delete
        r.Fields.Add r, wdFieldEmpty, s, False
        Set r = Nothing
      End If
    End With
  Next
End With
End Sub

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .