将Word文档的内容从excel VBA复制到新创建的Word文档

詹姆斯·卡特

我正在尝试使用Excel数据对Word文档执行各种任务。但是,这将被其他人使用,因此我想将所有内容从单词doc(以及格式和表格)复制到新的单词doc并进行编辑,以防止其他人意外地在第一个文档(模板)上进行保存。 )。我还想关闭模板(第一个)文档,并保持第二个(新)文档打开。

我是VBA的新手,无法理解如何处理此问题。经过一堆谷歌搜索,我已经编译了这个(不起作用)的代码:

Dim WordApp As Object
Dim WordDoc As Word.Document
Dim NewWordDoc As Word.Document
'Dim other stuff'

'-------------------------------------------------------------------
Set WordApp = CreateObject("Word.Application")
WordApp.Visible = True
Set WordDoc = WordApp.Documents.Open("C:\Users\Windows\Documents\CRC Labels 
test.doc")
Set NewWordDoc = WordApp.Documents.Add 'I think this gives an error'
'------------------------------------------------------------------------
'Line that actives WordDoc'
Selection.WholeStory 'Select whole document
Selection.Expand wdParagraph 'Expands your selection to current paragraph
Selection.Copy 'Copy your selection
'Line that closes WordDoc'
'Line that activates NewWordDoc'
Selection.PasteAndFormat wdPasteDefault 'Pastes in the content
'------------------------------------------------------------------------
'Do stuff with NewWordDoc'


'------------------------------------------------------------------------
Set WordDoc = Nothing
Set WordApp = Nothing

处理这种情况还有其他想法吗?感谢您的答复。

辛迪大师

当您发现使用现有文档作为创建新文档的基础时,就该考虑将该文档另存为Word模板了这是一种特殊类型的文件(* .dotx或* .dotm),可能包含

  • 样板文字
  • 根据需要插入带有附加锅炉板的构建块
  • 样式(格式化命令集)
  • 自定义键盘快捷键
  • 功能区自定义
  • VBA代码(仅限* .dotm中的宏)

从模板生成的所有文档都将继承和/或共享这些文档。

为了从模板创建新文档,请使用Documents.Add方法,指定路径和文件名:

Dim wdDoc as Word.Document
Set wdDoc = Documents.Add(path & filename) 
'From outside Word: Set wdDoc = wdApplication.Documents.Add

这将从模板创建一个新文档,复制完整的模板内容,而不会影响模板本身。

注意:您也可以对Documents.Add方法使用“普通文档”(* .docx),它将复制内容。但是,它不会链接回该文档,因此它不能共享宏。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

从Excel VBA将页眉/页脚插入到新创建的Word文档中

如果满足多个条件,VBA 将行复制到新创建的工作表

如何使用vba将一个Word文档的内容复制到另一个Word文档的末尾?

如何将一个Word文档的内容复制到另一个Word文档中?

使用Excel宏VBA将Word文档中的第一个表复制到Excel

通过Excel Vba在两个新创建的Word文档之间切换不会发生

我想使用VBA将所有文本从MS Word文档复制到MS Excel,其中Excel列出了文档及其位置

将代码复制到Word文档中并保持格式

将Excel范围复制到Word文档,包括其隐藏的子范围

字符串太长,将数据从 Excel 复制到 Word 文档中

Excel 到 Word VBA 导出 - 未创建 Word 文档

将特定的图纸复制到新文档-Excel VBA

Swift:无法将文件复制到新创建的文件夹

将文件复制到新创建的文件夹

将源文档中的每个 Word 表格逐页复制到目标文档中

复制Word文档Sections的内容

如何复制Word文档的内容?

将表格从Word复制到Excel-VBA

无法将值从Excel复制到Word vba

使用脚本编辑器将Excel文件从Google云端硬盘复制到新创建的文件夹

Terraform 脚本将现有 Key Vault 证书复制/填充/复制到新创建的 Key Vault 中

Excel VBA 在 Word 文档表中居中内容

EXCEL VBA:忽略Word文档错误并阅读内容

将现有文件夹复制到Eclipse工作区中新创建的项目中

如何将文件从源复制到目标并重新创建文件夹结构

Applescript将每个文件/文件夹复制到新创建的文件夹中

Java将列表的1/3元素复制到新创建的三个列表

在部分文件名匹配时将文件复制到新创建的文件夹中

提取Excel表格范围并复制到新的Word文档中