隐藏Excel应用程序与特定的条件

我正在开发一个Excel VBA数据库和pipe理系统,我想在数据库运行的时候隐藏excel应用程序(只显示用户表单),以及是否打开另一个excel文件,使应用程序再次可见。

首先我用:

Sub workbook_open() Application.Visible = False End sub Sub Workbook_beforeclose(Cancel as Boolean) Application.visible = True End sub 

这个问题是,当我有这个特定的程序/数据库运行它将无法同时使用Excel的其他文件,如果我想。

我试图想出一个解决scheme,将是:

 Sub Workbook_Open() If Workbooks.count > 1 then Application.visible = true Application.windows("mydatabase.xlsm").visible = false Else Application.Visible = False Application.ScreenUpdating = False SplashUserForm.Show (vbModeless) End If 

有了这个我想到使应用程序可见和特定工作簿(mydatabase)不可见,并且一旦其他工作簿closures,如果只有特定的工作簿打开(mydatabase)它将返回到application.visible = false。

这是我find的解决scheme,但是我在执行此代码时遇到问题,因为一旦它打开第二个工作簿(随机Excel文件),它会使应用程序再次可见,但不会使特定工作簿(mydatabase)不可见。

有人会知道我可以如何执行此代码? 或者我的问题的替代解决scheme?

而我想隐藏Excel工作簿的原因是使它看起来像一个独立的程序,有自己的界面,并有一个更独特的感觉,而不是在后台有一个工作簿或Excel界面。

非常感谢你