【发布时间】:2016-08-05 08:30:55
【问题描述】:
我想阻止打开已经打开的工作簿。 我的工作簿包含 VBA 用户表单。
通过双击存储在特定位置的工作簿图标触发重新打开工作簿的事件,并且之前打开并运行了相同的文件并运行 VBA 用户窗体。
我尝试了以下代码,但它无法帮助我阻止重新打开。
Private Sub Workbook_Open()
If ThisWorkbook.IsInplace = True Then
MsgBox "Workbook Already Open"
ThisWorkbook.Close (False)
Else
MsgBox "Single Instance Open"
End If
End Sub
预期输出: 当我在文件已经打开的情况下双击 excel 文件时,理想情况下它应该什么都不做(或者它可以覆盖工作簿)
实际输出: 当我在文件已经打开的情况下双击excel文件时,它会弹出对话框“文件已经打开,重新打开文件将放弃更改”,带有yes,no和cancel选项。
【问题讨论】:
-
"双击存储在特定位置的工作簿图标":你的意思是你有一些
GetOpenFilename()方法正在运行或类似的吗?