Excel VBA:将工作簿另存为Word文档

时间:2017-12-08 07:40:42

标签: vba ms-word save-as

我想将我的工作簿(所有工作表)保存为一个Word文档。 一张纸是文档中的一页。

我只找到了保存activeSheet的代码。

Sub ExcelToWord()
Dim ws As Worksheet
Set ws = ActiveSheet
Dim objWd As Object
Set objWd = CreateObject("word.application")
objWd.Visible = True
Dim objDoc As Object
Set objDoc = objWd.Documents.Add
objDoc.PageSetup.Orientation = 1 '  portrait = 0
Application.ScreenUpdating = False
ws.UsedRange.Copy
objDoc.Content.Paste
Application.CutCopyMode = False
Application.DisplayAlerts = False
objDoc.SaveAs (Application.ThisWorkbook.Path & "\dokument.docx")
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub

感谢您的回复。

1 个答案:

答案 0 :(得分:1)

一些快速的事情可以让你找到解决方案。

首先是遍历工作簿中的工作表,如下所示:

\\server\C$\folder\subfolder\

下一部分是了解如何完成向Word文档添加内容。主要概念涉及文档的插入点所在的位置 - 通常这是当前的Dim ws As Worksheet For Each ws in ThisWorkbook.Sheets Debug.Print "The used range is " & ws.UsedRange.Address Next ws

当您剪切并粘贴到Word文档时,刚粘贴的内容仍然是“已选中”。这意味着任何后续粘贴都将有效地替换刚插入的内容。因此,您必须将选择点移动到文档的末尾。

将它们放在一个示例程序中:

Selection