格式化从 Excel 粘贴到 Word 的 table

Formatting a table pasted from Excel to Word

来自菜鸟和零星 vba 用户的大家好。我已经成功地将一组表格从 Excel 复制到 Word 中,并使用下面的第一个例程对每个表格进行格式化。为了适应更大的字体,我需要更改第一行的行高并更改段落行距,但第二段代码无法做到这一点。我确定解决方案很简单......

For t = 1 To 6
    With appWD.Selection.Tables(t)
    .TopPadding = 0
    .BottomPadding = 0
    .LeftPadding = 0.11
    .RightPadding = 0
    .Spacing = 0
    .AllowPageBreaks = True
    .AllowAutoFit = True
    .Rows.SetHeight RowHeight:=12, HeightRule:=2
    End With
Next t

For t = 1 To 6
    With appWD.Selection.Tables(t).Rows(1)
    .SetHeight RowHeight:=18
    .ParagraphFormat.LineSpacing = 15
    End With
Next t

••••ˇˇˇˇ

我 运行 Excel/Word 2016 年 mac。

谢谢。

使用 appWD.Selection 是不好的做法。您有一个要处理的打开文档,因此请直接引用它。例如:

With wdDoc
  For t = 1 To 6
    With .Tables(t)
      .TopPadding = 0
      .BottomPadding = 0
      .LeftPadding = 0.11
      .RightPadding = 0
      .Spacing = 0
      .AllowPageBreaks = True
      .AllowAutoFit = True
      .Rows.SetHeight RowHeight:=12, HeightRule:=2
      .Rows(1).SetHeight RowHeight:=18, HeightRule:=1
      .Rows(1).Range.ParagraphFormat.LineSpacing = 15
    End With
  Next t
End With

请注意第 1 行 SetHeight 方法包含了适当的 HeightRule 参数。另请注意,所有处理都是在一个循环中完成的,而不是您的代码使用的两个循环。