6

У меня есть документ Word2010, созданный инструментом Axure.

  • Каждый заголовок оформляется с использованием собственного стиля ("AxureHeading1", "AxureHeading2", "AxureHeading3").
  • Мне удалось создать оглавление с пользовательскими заголовками: References tab, click Table of Contents, click Insert Table of Contents, and then click Options. Under Available styles .
  • Но я не могу понять, что мне нужно сделать, чтобы включить эти пользовательские заголовки в панель навигации

Что я могу сделать, чтобы либо

  1. изменить каждый пользовательский заголовок (уровень 1, 2, 3) со встроенными заголовками из word, не щелкая и не выбирая каждый заголовок вручную (VBA Macro?)
  2. или измените стиль заголовка, чтобы он отображался на панели навигации.

Изображение панели навигации, которая показывает заголовки встроенного Панель Navigaton в Word 2010

Обновить

Кажется, что мой макро-подход работает (вариант 1). Но если кто-нибудь знает способ для варианта 2, мне все равно было бы интересно узнать об этом.

3 ответа3

10

VBA не требуется.

В диалоговом окне изменения стиля выберите FORMAT - PARAGRAPH и измените УРОВЕНЬ ВЫХОДА с основного текста на желаемый уровень структуры.

Это добавит все заголовки с этим стилем в схему документа, показанную на панели навигации.

1

Вариант 1 для замены форматирования

Использование макроса

Следующий макрос меняет заголовок с одного стиля на другой

Sub FindAndReplaceStyle()

Dim intI As Integer
Dim newStyle As String


For intI = 1 To ActiveDocument.Paragraphs.Count

    curStyle = ActiveDocument.Paragraphs(intI).Style

    If curStyle = "AxureHeading1" Then
       Call SetStyle(intI, wdStyleHeading1)

    ElseIf curStyle = "AxureHeading2" Then            
        Call SetStyle(intI, wdStyleHeading2)

    ElseIf curStyle = "AxureHeading3" Then
        Call SetStyle(intI, wdStyleHeading3)

    End If       

Next intI

и уменьшить дублирование кода и повысить читаемость небольшой вспомогательной функции

Sub SetStyle(intI, newStyle)

    Dim ranActRange As Range
    Set ranActRange = ActiveDocument.Paragraphs(intI).Range

        With ranActRange               
            ranActRange.Style = newStyle
        End With

End Sub

Использование диалога поиска замены

В этой статье я обнаружил, что с помощью встроенной функции поиска и замены (CTRL +H) вы можете выбрать для поиска форматирования. Я еще не проверял это на своем документе, но я выгляжу многообещающим.

Вариант 2 Изменение уровня структуры

Как предложил Патрик, вы можете изменить УРОВЕНЬ ВЫХОДА с основного текста на другой. Так как мое редактирование ответа Patricks было отклонено, я включил снимок экрана в этот ответ.

Открыть диалог изменения стиля

Открыть диалог изменения стиля

Выберите абзац в качестве объекта формата, который вы хотите изменить

Выберите абзац в качестве объекта формата, который вы хотите изменить

Выберите уровень структуры

Выберите уровень структуры

0

Самый простой способ - сделать заголовок верхнего уровня основанным на заголовке 1 в диалоговом окне « New Style (или « Modify).

Пока ваши пользовательские заголовки каскадируются с верхнего уровня, они будут отображаться на панели навигации.

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