[英]VBA Styling Paragraphs in Word
我正在尝试从 Excel 文档格式化 Word 文档。 我正进入(状态
运行时错误 5941:请求的集合成员不存在。
我只是想将第二段的样式设置为 Normal 内置样式。 我缺乏经验可能表明。 问题似乎与段落选择有关,但我不完全确定如何 go 关于它。
Dim WordApp As Word.Application
Set WordApp = New Word.Application
WordApp.Documents.Add Template:="Normal", NewTemplate:=False, DocumentType:=0
WordApp.Visible = True
WordApp.Selection.TypeText ("New Document")
WordApp.Selection.Paragraphs(1).Style = wdStyleHeading1
WordApp.Selection.TypeText vbNewLine & "Date" & Date
WordApp.Selection.Paragraphs(2).Style = wdStyleNormal
End Sub
编辑:我现在正试图找到在同一行更改格式的最佳方法。 例如:
日期: 2021 年 10 月 2 日
问题是到目前为止我的样式更改适用于整个段落。 有任何想法吗?
更好的是:
Sub Demo()
Dim WdApp As New Word.Application, WdDoc As Word.Document
With WdApp
.Visible = True
Set WdDoc = .Documents.Add
With WdDoc
.Range.Text = "New Document" & vbCr & "Date: " & Date
.Paragraphs(1).Style = wdStyleHeading1
End With
End With
End Sub
注意没有代码到 select 的 Normal 模板或将 Normal Style 应用到第 2 段。 这是因为默认模板是“Normal”,默认样式是“Normal”,因此指定这些通常不是必需的。 如果您希望整个文档具有特定的默认样式,仅由标题等替换,请在 '.Range.Text = '之前通过'.Paragraphs(1).Style = ' 应用它。
您想使用ActiveDocument
而不是Selection
:
WordApp.ActiveDocument.Paragraphs(2).Style = wdStyleNormal
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.