如何在不打开的情况下在word中运行宏。 我之前经历了同样的问题 解决方案是:
NSArray
这对我也很有用,但在这种情况下文件名是特定的(Dim Word
Dim WordDoc
Set Word = CreateObject("Word.Application")
Word.Visible = False
Set WordDoc = Word.Documents.open("D:\working_folder\abc.doc")
Word.Run "<macroname>"
WordDoc.Save
Word.Quit
Set WordDoc = Nothing
Set Word = Nothing
)。
如果我想为同一文件夹中的所有word文件运行宏,该怎么办? 宏在所有这些文件中定义,我只想知道如何获取文件夹中的所有文件名。
答案 0 :(得分:2)
未经测试,但是像这样:
Dim Word, fldr, f
Dim WordDoc
Set Word = CreateObject("Word.Application")
Word.Visible = False
fldr = "D:\working_folder\"
f = Dir(fldr & "*.doc*")
Do while f<>""
Set WordDoc = Word.Documents.open(fldr & f)
Word.Run "<macroname>"
WordDoc.Save
WordDoc.Close
f = Dir()
Loop
Word.Quit
Set WordDoc = Nothing
Set Word = Nothing
您无法在不打开包含该文件的文件的情况下运行宏。