0

我希望为我的问题找到解决方案(无论是否是 VBA)。我有一个 Word 文档,其中包含链接的 Excel 表格。所有链接都正常工作,但我必须手动打开 Word 文档才能使用 Excel 数据刷新。我使用 Word 而不是 Excel 的原因是由于大量的文本。

有没有一种方法可以编写某种代码来遍历文件夹中的所有 Word 文档、打开每个文档、刷新所有链接、保存文档并移至下一个?

这是我到目前为止所拥有的

Sub OpenFiles()
Dim MyFolder As String
Dim MyFile As String

MyFolder = "LOCATION"
MyFile = Dir(MyFolder & "\*.docx")

Do While MyFile <> ""
    Documents.Open Filename:=MyFolder & "\" & MyFile
    MyFile = Dir
Loop

End Sub

更新

好的,我能够使打开文件命令工作!现在我试图让它覆盖/保存文件并关闭它。

错误消息:需要对象

Sub OpenFiles()
Dim MyFolder As String
Dim MyFile As String
Dim objWord As Object

Set objWord = CreateObject("Word.Application")
objWord.Visible = True
MyFolder = "LOCATION"
MyFile = Dir(MyFolder & "\*.docx")
Do While MyFile <> ""
objWord.Documents.Open Filename:=MyFolder & "\" & MyFile

Application.DisplayAlerts = False
ActiveDocument.SaveAs Filename:=MyFile
Application.DisplayAlerts = True

MyFile = Dir
Loop
End Sub
4

1 回答 1

0

您可以尝试以下任何一种:

Dim objDoc As Object
Do While Myfile <> ""
    Set objDoc = objWord.Documents.Open(Filename:=MyFolder & "\" & MyFile)
    objDoc.Save '~~> Save
    objDoc.Close '~~> Close
    Myfile = Dir
Loop

或者你可以像这样使用关闭方法

objDoc.Close True '~~> close with SaveChanges argument set to True
于 2014-11-04T22:30:04.730 回答