Применить стиль таблицы к заголовку с помощью 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