Как применить стиль к нижнему колонтитулу в Word 2010 с помощью VBA?

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

размер должен быть 6, как и остальная часть нижнего колонтитула, но 9,5, как и исходный текст. Это происходит только с одним полем. Я проверил, что Знак абзаца и вся строка отформатированы правильно. Я даже скопировал одну из закладок функций и адаптировал их, но размер шрифта всегда неправильный.

проблема возникает на нескольких компьютерах.

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

что я пробовал до сих пор:

  • Я создал стиль для нижнего колонтитула (называемый footer1) - до этого он был не определен
  • я баловался с VBA и гуглил несколько часов безрезультатно.
  • отключение / включение переключателей mergefield в поле Ref
  • поиск Google для "применить стиль к нижнему колонтитулу word vba"

неудачных попыток:

ActiveDocument.Sections(ActiveDocument.Sections.Count) _
        .Footers(1).Range.Style("footer1")

вот код:

ActiveDocument.Fields.Update
ActiveDocument.Sections(ActiveDocument.Sections.Count) _
        .Footers(1).Range.Fields.Update
' code needed here for changing footer's style to "footer1" 
' Alternative: apply style only to faulty ref field.

Спасибо за вашу помощь.

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

6
задан Dave
11.12.2022 6:26 Количество просмотров материала 2897
Распечатать страницу

1 ответ

чтобы изменить размер шрифта для определенного нижнего колонтитула в Word, используйте Range.Font.Si‌​ze

ActiveDocument.Sections(1).Footers(1).Range.Font.Size = 6

синтаксис explained

  • ActiveDocument: объект документа, представляющий активный документ. Другие способы доступа к файлам Word:документ (индекс) или документ("полное имя")

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

    читать здесь.

    в VBA, при использовании Sections.Count в качестве параметра указатель на .Sections(index), это будет всегда представляйте последний раздел вашего документа

  • .Footers (index): представляет одну область нижнего колонтитула в верхнем, Нижнем или боковом полях каждой страницы документа. Другие часто используемые свойства секций:border,header или range, что означает полное тело в данном разделе

  • колонтитулы(индекс).Диапазон: представляет собой часть документ, содержащийся в указанном верхнем или нижнем колонтитуле. Обратите внимание на разницу Sections(index).range

  • шрифт.Размер: одно из многих свойств шрифта. Другие общие свойства для нижних колонтитулов Words(index) изменить конкретные слова, Fields или просто Text Читать полный текст

4
отвечен nixda 2022-12-12 14:14

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх