我正在尝试创建自动报告。到目前为止,我已经设法能够从一个充满书签的模板创建word文档,将excel中的特定数据插入到正确的位置,最后将文件保存为.docx和随机名称。
我的问题是,在更新所有这些书签后,我需要在书签“PgBrk”上添加分节符并创建一个新页面。我不介意保留任何书签,因为任何新文件都会以新名称自动保存;因此我的模板总是完好无损。
过去几天一直在网上看,但最终会出现某种错误,具体取决于我的尝试。
我的代码是这样的:
Sub REP_DET()
Dim Template_Path As String
Dim Template_Name As String
Dim LRandomNumber As Integer
Template_Path = Application.ActiveWorkbook.Path
Template_Name = "\template.docx"
Randomize
LRandomNumber = Int((9999 - 1000 + 1) * Rnd + 1000) 'Int ((min - max + 1) * Rnd + min)
Set wApp = CreateObject("Word.Application")
wApp.documents.Open (Template_Path & Template_Name)
wApp.Visible = True
Set wdoc = wApp.documents.Open(Template_Path & Template_Name)
With wdoc
.Bookmarks("Item_Code").Range.Text = Sheets("A").Range("H2").Value
' various figures are populated in designated bookmark positions within the doc file
end with
With wdoc
.Bookmarks("PgBrk").Range.Select
With Selection
.Collapse Direction:=0
.InsertBreak Type:=wdSectionBreakNextPage
End With
End With
With wdoc
.SaveAs2 Filename:=(Template_Path & "\template" & LRandomNumber & ".docx"), _
FileFormat:=wdFormatXMLDocument, AddtoRecentFiles:=False
End With
任何帮助表示感谢。
答案 0 :(得分:0)
尝试:
使用wdoc .Bookmarks(“ PgBrk”)。Range.Select 选择**。**
因此它使用Word选择而不是Excel。同样,“使用wdoc.selection”可以解决我的问题