如何快速检查Excel中的工作簿是打开还是关闭的

如何快速检查Excel中的工作簿是打开还是关闭的

如果您是团队中的一员,那么必然会出现多个人试图使用同一个文件的情况。当您尝试在计算机上重命名文件时,您的团队成员可能正在同时查看工作簿中的某些信息。

如果您尝试使用宏来完成此操作,最有可能会出现运行时错误。这是因为手动运行文件时,通常会产生一个可接受的警告消息;但是,如果您尝试使用宏来完成此操作,最有可能会收到错误信息。其他将使用您的宏的用户很可能不知道此错误的重要性。

为避免这种情况,本教程将展示如何使用VBA代码查看文件是否已被其他用户打开。

使用VBA检查工作簿是否已经打开或关闭

Excel要求您同时打开多个工作簿以便可以同时处理它们;但是,当您同时打开数十个工作簿时,很难跟踪哪些工作簿是打开的,哪些是关闭的。

按以下步骤添加VBA代码以检查工作簿是否已经打开。

第一步

在我们的例子中,我们打开了一个Excel文件,如下图所示。

如何快速检查Excel中的工作簿是打开还是关闭的

第二步

同时按下 Alt + F11 键以打开Microsoft Visual Basic for Applications窗口。然后点击 插入>模块

如何快速检查Excel中的工作簿是打开还是关闭的

第三步

然后将以下VBA代码添加到空模块中。

Function IsFileOpen(Name As String) As Boolean
    Dim xWb As Workbook
    On Error Resume Next
    Set xWb = Application.Workbooks.Item(Name)
    IsFileOpen = (Not xWb Is Nothing)
End Function

然后通过将文件名作为参数传递给上述函数,在给定的代码中调用上述函数。

Sub Sample()
    Dim xRet As Boolean
    xRet = IsFileOpen("Test.xlsx")
    If xRet Then
        MsgBox "文件已打开", vbInformation, "VBOutput"
    Else
        MsgBox "文件未打开", vbInformation, "VBOutput"
    End If
End Sub

在上面的代码中, Test.xlsx 是我们要检查的工作簿的名称(它是否打开或关闭)。

如何快速检查Excel中的工作簿是打开还是关闭的

步骤 4

然后按下 F5 或转到 **运行 > 运行Sub / UserForm。 **

如何快速检查Excel中的工作簿是打开还是关闭的

运行上述代码将产生以下图像中给出的输出。

如何快速检查Excel中的工作簿是打开还是关闭的

如果我们关闭文件,然后运行该代码,它将产生输出“文件未打开”。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程