VBA Word分配表标题行

时间:2019-05-23 05:32:04

标签: vba ms-word

我有一个从Excel粘贴(粘贴和格式化)的表。现在,我需要第一行和第二行显示在每个页面的顶部。问题是我无法使用VBA代码来运行它,但可以手动执行。

我浏览了Internet,MSDN和VBA中的对象库,但是我似乎可以找到使用代码的方式,就像手动完成一样。

Sub test()
    Dim tbl As Table

    Set tbl = ActiveDocument.Tables(1)

    tbl.Rows(1).HeadingFormat = True
End Sub
  

运行时错误:5991无法访问选择中的特定行,原因是   包含垂直合并单元格的表

但是,如果我手动执行此操作,请进入“表属性”对话框,在“行”选项卡上,选择第1行,然后勾选“在每一页上重复第一行”选项,就可以了。

1 个答案:

答案 0 :(得分:0)

由于在前两行中已垂直合并单元格,因此需要先设置行,然后再设置HeadingFormat

ActiveDocument.Tables(1).Cell(1, 1).Select
With Selection
  .MoveDown Unit:=wdLine, Count:=1, Extend:=wdExtend
  .Expand wdRow
  .Rows.HeadingFormat = True
End With