通过Excel修改Word文档中的行间距

时间:2012-02-07 16:42:50

标签: excel vba ms-word

我有这个excel文件,我已经能够通过vba将数据写入Word文档以获取报告。 VBA代码位于包含数据的excel文件中。

我已经完成了大部分代码并且它正常工作,但我无法弄清楚如何通过excel中的单词(通过vba代码)来改变段落间距。有什么建议吗?

我使用以下代码从excel写入单词(不是完整代码只是一个例子):

Dim wdApp As Word.Application
Dim wdDoc As Word.Document
Set wdApp = New Word.Application
Set wdDoc = wdApp.Documents.Add
wdDoc.Content.InsertAfter "Test"
wdDoc.Content.InsertParagraphAfter
wdDoc.SaveAs (file & "\SpecificReport_" & filter & ".doc")
wdDoc.Close
wdApp.Quit
Set wdDoc = Nothing
Set wdApp = Nothing

2 个答案:

答案 0 :(得分:2)

建议,但没有具体答案。如果您在使用Word查找如何使用Excel执行某些操作时遇到任何问题,我会发现在单词中记录操作并查看生成的代码通常会为我回答这些问题。

在这个特定的例子中,我提出了以下几行代码:

wdDoc.Content.ParagraphFormat.SpaceBefore = 6 wdDoc.Content.ParagraphFormat.SpaceBeforeAuto = False

答案 1 :(得分:0)

我猜你已经被要求将正常字体改回单个间距(pre-word2010)。除了改变normal.dotx之外,试试这个:

With The_WordDoc.Styles("Normal").ParagraphFormat
.SpaceBefore = 0
.SpaceBeforeAuto = False
.SpaceAfter = 0
.SpaceAfterAuto = False
.LineSpacingRule = wdLineSpaceSingle

End With
The_WordDoc.Styles("Normal").NoSpaceBetweenParagraphsOfSameStyle = _
  False
With The_WordDoc.Styles("Normal")
  .AutomaticallyUpdate = False
  .BaseStyle = ""
  .NextParagraphStyle = "Normal"
End With