【问题标题】:Text from excel cells to individual word files从 excel 单元格到单个 word 文件的文本
【发布时间】:2015-07-07 22:25:59
【问题描述】:

我有一个如下所示的 Excel 文件:

     A          B
1  Title_1  Description_1
2  Title_2  Description_2

是否可以将每个标题和描述输出到单个 Word 文件中,其中 A 列是 Word 文件的文件名,B 列是其内容?

例如,宏将创建一个新的 Word 文件,并为其命名为“Title_1”并复制“Description_1”。然后再次创建一个新的 Word 文件,将其命名为“Title_2”并复制“Description_2”。并执行此操作,直到复制 Excel 文件中的所有数据。

感谢您的宝贵时间。 :)

【问题讨论】:

  • 到目前为止你有没有尝试过?如果你表明你已经尝试过自己解决这个问题,你会得到本站天才的好评!

标签: vba excel


【解决方案1】:

您要查看的内容称为“邮件合并”。使用搜索引擎并查找“mail merge excel word 2007”(或您正在使用的任何 MS Office 年份)。您可以创建一个 excel 宏来创建 word 实例、使用您想要的 excel 电子表格中的任何内容填充 word doc、使用您想要的任何名称保存 word doc、导出到 PDF 等。

【讨论】:

    【解决方案2】:

    这里有一些提示可以帮助你开始:

    在 VBE 中转到工具参考并为 Microsoft Office 添加一个。

    使用这两行代码创建一个对象:

    Dim MyWord
    Set MyWord = CreateObject("Word.Application")
    

    现在您可以在任何代码之前使用 MyWord,例如在 Word 中添加一个 Documents.Add,从 Excel 远程添加它将是 MyWord.Documents.Add

    您需要在 excel 中循环遍历您的单元格。在循环的每次迭代中填充两个变量,一个包含您想要在文件中包含的文本,另一个包含文件名。

    然后只需使用 MyWord 输入变量的结果,然后使用其他变量的结果保存文件。

    如果遇到困难请回帖,但请先尝试一下。

    【讨论】:

      【解决方案3】:

      这对于任何操作系统都很容易,假设您使用的是 Windows,您将使用批处理脚本(最简单)。

      首先使用数据功能区上的另存为/导出以另存为 CSV。

      其次,您需要一个批处理脚本来读取 CSV,并使用第一个值作为文件名,第二个值作为内容。如果您希望它是 doc 或 docx 而不是 txt,只需在同一循环中重命名文件或在输出为文本时将其添加到文件名中。

      这是一个类似的帖子,其中包含您需要将快速批处理脚本拼凑在一起的所有资源。

      read csv file through windows batch file and create txt file

      【讨论】:

      • OP 声明他们正在寻找宏(即 VBA)解决方案。
      • 重命名的文本文件不是 word 文档,尽管 word 会打开它,但它只是一个文本文件。例如,创建一个包含一些基本文本的文本文件,在 word 中打开并保存为 word doc (docx)。现在将两个文件重命名为 .zip 扩展名,打开它们看看会发生什么。
      • 我看到他将其列为 VBA,但他并没有具体说明他的目标是什么,或者它必须是 VBA 宏。另外,您在谈论语义,是的,文本文件不是 zip 文件...但是如果您只是尝试将文本转换为可以用单词打开的格式(即他的帖子所指出的),我的解决方案将完全适用目的。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多