Применить стиль таблицы к заголовку с помощью VBA

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

Ниже приведен код, который я использую для применения стиля к заголовку:

Sub FormatTableHeader(ByVal control As IRibbonControl)
Dim tbl As Table

If Selection.Information(wdWithInTable) = True Then
    Set tbl = Selection.Tables(1)

    tbl.Rows(1).Range.Style = "TableHeader"
End If

End Sub

Мне также нужно сделать что-то подобное для тела таблицы.

Можно ли сделать то, что я пытаюсь сделать, используя стили таблиц? Я знаю, что мог бы написать код для форматирования заголовка таблицы, но я надеялся сохранить код связанным со стилями.

1 ответ

Не уверен, что это возможно, но вы могли бы следовать этой процедуре, чтобы создать свои собственные стили и применить их к строке заголовка или телу таблицы.

Sub tableFormat()
Dim lastRow As Integer

lastRow = ActiveDocument.Tables(1).Rows.Count


With ActiveDocument.Tables(1).Rows(1).Range.Font
        .Name = "Arial"
        .Size = 12
        .Italic = True
        .Bold = True
End With

For i = 2 To lastRow
With ActiveDocument.Tables(1).Rows(i).Range.Font
        .Name = "Arial"
        .Size = 8
        .Italic = False
        .Bold = False
End With
Next i
End Sub
Другие вопросы по тегам