关闭已打开的Word文档

时间:2014-08-30 16:55:43

标签: excel vba excel-vba

我正在尝试检查特定word文档是否打开。如果打开,然后关闭它,然后再次重新打开,如果没有,则打开它。

问题是我在尝试关闭文档时总是收到错误的文件名4160错误。

有人会告诉我我的代码中究竟出现了什么问题。

提前感谢你。

        Dim wdApp As Object
        Dim myDoc As Word.Document

        Set wdApp = GetObject(, "Word.Application")

        If IsFileOpen("C:\Letters\TemporaryLetter.docx") Then
            wdApp.Documents("C:\Letters\TemporaryLetter.docx").Close
        End If

        With wdApp
            .Visible = True
            .WindowState = 2
        End With

        Set myDoc = wdApp.Documents.Open("C:\Letters\TemporaryLetter.docx")

2 个答案:

答案 0 :(得分:0)

没有看到功能" IsFileOpen"你打电话给我"猜测它需要文件的简称(例如" TemporaryLetter.docx")而不是完整的路径?尝试:

If IsFileOpen("TemporaryLetter.docx") Then
    wdApp.Documents("TemporaryLetter.docx").Close
End If

答案 1 :(得分:0)

尝试一下。

Set myDoc = word.Documents.Open ("C:\Letters\TemporaryLetter.docx")

If IsFileOpen(mydoc) Then
        mydoc.Close(False //Here if you want to save your document or not)
End If