
VBA必须寄生于已有的应用程序,必须依赖于它的"父"应用程序,例如EXCEL、Word、CAD,只能在它的"父"应用程序中运行,而不能独立运行。
可以将VBA看作一种自动化语言,其作用通常就是使常用的应用程序自动化,起“控制器”的作用。
如果要变成独立的应用软件,用VB或VBS吧;若有较高的界面要求,就考虑VB吧。VB具有独立的开发环境,可创建标准的应用程序并编译成可执行文件。
这是因为你没有给出判断,但在新增工作表时两个事件都触发了。导致新建后再次被删除
我加了一个小条件,你自己看一下,琢磨下是怎么回事
Public WithEvents app2 As ExcelApplicationPublic WithEvents app1 As ExcelApplication
Private Sub Workbook_Open()
Set app2 = ExcelApplication
Set app1 = ExcelApplication
End Sub
Private Sub app1_WorkbookNewSheet(ByVal Wb As Workbook, ByVal Sh As Object)
MsgBox "欢迎新建工作表"
End Sub
Private Sub app2_WorkbookNewSheet(ByVal Wb As Workbook, ByVal Sh As Object)
If ApplicationDisplayAlerts = False Then
MsgBox "无权新建工作表"
ShDelete
ApplicationDisplayAlerts = True
End If
End Sub
代码没问题
Set RegExp = CreateObject("vbscriptregexp")
是不是你没有权限 或者系统禁用vbs脚本 再或者 你系统缺失wscriptexe文件
以上就是关于vba 如何变成程序全部的内容,包括:vba 如何变成程序、Excel VBA中关于应用程序事件的运行问题、Vba 应用程序定义或对象定义错误等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)