我正在使用Excel创建一个应用程序,所有用户交互都发生在用户表单中。我希望我的应用程序在excel的单独实例中运行,而不是已打开的任何其他文件,或者在我的应用程序运行时由用户手动打开的任何文件。我发现以下链接具有相关性和趣味性,但我不确定如何在我的应用程序中实现这一点:Answers.microsoft.com Can I create an instance of Excel that can only be accessed by my VBA project?
以下是我想要实现的方法:
我使用两个文件:StartFile.xlsb,SystemFile.xlsb
澄清:用户根本无法与私有excel实例应用程序进行交互。它的.visible设置仍然是错误的。它用于显示用户表单,因此对于用户来说,这看起来像一个独立的应用程序
旁注:无论宏安全设置如何,如何确保我的新Excel实例都启用了宏? (用户已经启用了一次宏)(到目前为止我还没有注意到这种情况,是吗?)
答案 0 :(得分:-2)
你正在寻找这样的东西吗?
您无法更改宏安全设置,因为这会破坏具有这些设置的整个目的。或者,您可以正确搜索VBA模块以更改Windows注册表。
此外,如果您使用IgnoreRemoteRequests
,请务必小心,然后每次都必须重新设置它。
**已编辑**隐藏SystemFile工作簿并只显示用户表单?然后在关闭用户窗体时关闭SystemFile工作簿。
Private Sub Workbook_Open()
Application.Visible = False
UserForm1.Show
End Sub
'UserForm module
Private Sub CommandButton1_Click()
Unload UserForm1
Application.Quit
End Sub