格式化从VBA输出的每行Word文档

时间:2016-10-28 09:20:43

标签: excel vba

我正在尝试使用Excel中的userform数据格式化word文档报告。我试图单独格式化每一行,就像它是HTML,我知道我做错了。我将在下面粘贴我的代码,请指导我如何按照我想要的方式格式化每一行。这个代码选择应该有安全观察:加粗和下划线,然后下一行应该是文本框中的值,而不是粗体或下划线。当我运行代码时,我只是获得了这个

的纯文本非格式化版本
    With wrdDoc
    .Content.Font.Bold = True
    .Content.Font.Underline = True
    .Content.InsertAfter ("Safety Observations:" & vbNewLine)
    .Content.Font.Bold = False
    .Content.Font.Underline = False
    .Content.InsertAfter (EOS.txtSafety & vbNewLine)
    End with

1 个答案:

答案 0 :(得分:0)

将范围保存在变量中可以使其更容易:

' optional early binding if reference is added to Microsoft Word #.0 Object Library
Dim r As Word.Range, wrdDoc As Word.Document 

Set r = wrdDoc.Paragraphs.Add.Range
r.InsertBefore "Safety Observations:"
r.Bold = True
r.Underline = True

wrdDoc.Paragraphs.Add.Range.InsertBefore EOS.txtSafety