假设我有以下代码将数组中的标题写入word文档并应用已定义的样式:
With wdDoc
Set wrdRange = .Range(0, 0) ' Set initial Range.
i = 2
Do Until i > 6
' Debug.Print wrdRange.Start, wrdRange.End
wrdRange.text = totalArray(i, colIndex(3)) & Chr(11)
Set wrdRange = .Paragraphs(i - 1).Range
wrdRange.Style = totalArray(i, colIndex(2))
wrdRange.Collapse 0
i = i + 1
Loop
End With
可以预期会发生以下情况:
我似乎无法修复的是应用于文档中所有现有段落的样式。尽管样式适用于所有现有段落,Debug.Print语句应该按预期显示正在更新的范围。
正如你所知,我已经玩弄了这么多,但无济于事。在这件事情上,任何帮助都会受到赞赏。
感谢。
答案 0 :(得分:1)
在以下代码行中:
wrdRange.text = totalArray(i, colIndex(3)) & Chr(11)
使用Chr(13)代替Chr(11)。后者只是换行符,而不是新段落。因此,将样式应用于Range的任何部分实际上是将其应用于代码生成的所有文本,因为它是单个段落。