追加而不是replaceWord文档内容

我在Excel工作簿中有多个工作表。 我在循环中迭代数据范围并将其粘贴到单词中。

问题是每次将表单的内容复制并粘贴到以前的所有内容都将消失。

那么我怎样才能停止replace以前的内容,并使VBA脚本附加到word文档?

Sub ewc() Dim WordApp As Word.Application Dim myDoc As Word.Document Dim WordTable As Word.Table Dim ws As Worksheet Dim tbl As ListObject Application.ScreenUpdating = False Application.EnableEvents = False Set WordApp = GetObject(class:="Word.Application") WordApp.Visible = True WordApp.Activate Set myDoc = WordApp.Documents.Open("D:\asd.docx") For Each ws In ThisWorkbook.Worksheets Debug.Print ws.Name, ThisWorkbook.Worksheets.Count ws.UsedRange.Activate LastRow = StartCell.SpecialCells(xlCellTypeLastCell).Row LastColumn = StartCell.SpecialCells(xlCellTypeLastCell).Column Debug.Print LastRow, LastColumn ws.Range(StartCell, ws.Cells(LastRow, LastColumn)).Select myDoc.Content.Paste Set WordTable = myDoc.Tables(1) WordTable.AutoFitBehavior (wdAutoFitWindow) myDoc.Save EndRoutine: Application.ScreenUpdating = True Application.EnableEvents = True 'Clear The Clipboard Application.CutCopyMode = False Next ws End Sub 

myDoc.Content.PastereplacemyDoc.Content.Paste所有myDoc.Content

如果您不想replace范围的内容,请在使用此方法之前使用“折叠”方法。

既然你不能折叠myDoc.Content ,你需要一个自定义的范围对象

 Dim pasteRange as Word.Range '... Set pasteRange = myDoc.Content pasteRange.Collapse wdCollapseEnd pasteRange.Paste