我有一个问题,即在VBA
中使用EXCEL
组合几个word文档的内容。这可能很简单,但我是VBA世界的新手...目前,我可以
但是,我想知道如何使用VBA跳过所有文档的第一页。我试过了tempDoc.Range(Start:=2).Select
,但它没有用。谢谢你的任何建议!
Set objTempWord = CreateObject("Word.Application")
Set tempDoc = objWord.Documents.Open(Folderpath to Word Document)
Set objTempSelection = objTempWord.Selection
tempDoc.Range.Select
tempDoc.Range.Copy
objSelection.TypeParagraph
objSelection.Paste
objSelection.InsertBreak Type:=wdSectionBreakNextPage
tempDoc.Close
答案 0 :(得分:2)
编辑 - 添加另一个Word常量 - 更改选择对象的定义
假设您已经定义了其他所有内容 这将从第2页开始,然后选择传送到文件结尾
const wdGoToAbsolute = 1
const wdGoToPage = 1
const wdGoToNext = 2
const wdStory = 6
const wdExtend = 1
Set objTempWord = CreateObject("Word.Application")
Set tempDoc = objWord.Documents.Open(Folderpath to Word Document)
With tempDoc.Application
.Selection.GoTo What:=wdGoToPage, Which:=wdGoToAbsolute, Name:="2"
.Selection.EndKey Unit:=wdStory, Extend:=wdExtend
.Selection.Copy
End With
objSelection.TypeParagraph
objSelection.Paste
objSelection.InsertBreak Type:=wdSectionBreakNextPage
tempDoc.Close
答案 1 :(得分:0)
不是Word VB专家,但我知道范围对象可以接受第一个字符和最后一个字符的数量的参数 - https://msdn.microsoft.com/en-us/library/office/ff845882.aspx。因此,您需要知道第二张纸上第一个字符的数量是多少个字符,以及最后一张纸上最后一个字符的字符数。然后,您可以使用范围对象 - https://msdn.microsoft.com/en-us/library/office/ff845882.aspx。
那说你提到Excel但不解释原因 - 这是Word还是Excel?