【问题标题】:How to use Excel to generate a folders containing a wordfile of the same name?如何使用 Excel 生成包含同名 wordfile 的文件夹?
【发布时间】:2018-01-04 20:28:18
【问题描述】:

我是一名技术作家,我正在寻找一种方法来简化我的软件发布工作流程。在每个版本中,我们都会获得一个包含请求编号和描述的 Excel 更改文件。我们部门为每次更改创建一个 word 文档,并使用请求编号和描述作为每个文档的标题。由于这些文件包含图像和其他文件,我总是从这个 Excel 表中创建一个同名文件夹来保存每个版本的所有更改。我使用这段代码来生成文件:

Sub MakeFolders()
Dim Rng As Range
Dim maxRows, maxCols, r, c As Integer
Set Rng = Selection
maxRows = Rng.Rows.Count
maxCols = Rng.Columns.Count
For c = 1 To maxCols
r = 1
Do While r <= maxRows
If Len(Dir(ActiveWorkbook.Path & "\" & Rng(r, c), vbDirectory)) = 0 Then
MkDir (ActiveWorkbook.Path & "\" & Rng(r, c))
On Error Resume Next
End If
r = r + 1
Loop
Next c
End Sub

我想知道:有没有办法在每个文件夹中都生成一个同名的 word 文件?

【问题讨论】:

  • 请注意,Dim maxRows, maxCols, r, c As Integer 并未将所有这些变量都定义为整数。 Excel 只查找下一个逗号,因此前 3 个是 Variant,只有最后一个是整数。有了文件夹后,能否将空白(准备好的)文档复制到该位置?
  • 是的;我也想过这样做。移动文件大约需要 30 秒。但是,我找不到任何适用于 Word 文档的文件,上面的脚本用于文件夹;即根据excel中的单元格创建一堆word文档。

标签: excel vba ms-word filenames


【解决方案1】:

Office 默认命名空间应该已经能够创建 Word 文档、Excel 工作簿、PowerPoint 等。该功能有点隐藏,因为您需要使用接受字符串标识符的 CreateObject 函数,最终是键入要创建的对象的名称。在这种情况下,您需要"Word.Application"。 Word.Application 还不是一个 Word 文档,它就像它听起来的样子(对 Microsoft Word 应用程序本身的对象引用)。这应该可以帮助您入门。

Set wordApp = CreateObject("Word.Application")
Set wordDoc = wordApp.Documents.Add
With wordDoc
    .SaveAs ("C:/SomeDirectory/SomeDoc.docx")
    ' VERY IMPORTANT TO CLOSE THE DOCUMENT
    .Close
End With

' Close the Microsoft Word Application
wordApp.Quit 

' Always cleanup your variables when you are done
Set wordDoc = Nothing
Set wordApp = Nothing

【讨论】:

  • 谢谢!这是很大的帮助。有没有办法让上面的文件名(“SomeDoc.docx”)来自一系列单元格甚至一个突出显示的单元格?我从 excel 中的一列创建了目录,我希望用 word 文档重新创建它。
  • Range 上有一个Text 属性。单个单元格仍被视为范围,它们只是将单个单元格作为其范围定义的开始和结束(技术上)。这是Text 属性msdn.microsoft.com/en-us/vba/excel-vba/articles/… 上的文档。它不是很有帮助的文档,但至少它是一些东西。最终,您会执行以下操作:Set fileName = myrange.Text ... worDoc.SaveAs(fileName)
猜你喜欢
  • 2020-06-22
  • 2015-09-21
  • 1970-01-01
  • 1970-01-01
  • 2017-08-23
  • 1970-01-01
  • 1970-01-01
  • 2010-10-04
  • 2021-05-03
相关资源
最近更新 更多