繁体   English   中英

将工作簿分配给变量

[英]Assign workbook to variable

我想将ActiveWorkbook设置为变量当工作簿同时打开时,ActiveWorkbook会分配给一个变量,并且该变量可以在整个VBA excel项目中使用。 我尝试在Workbook_open()函数上的ThisWorkbook excel对象中进行分配,但是它不起作用。我在下面提供该代码。

Private Sub Workbook_Open() On Error Resume Next Set WRBK = ActiveWorkbook #If Mac Then #Else 'unprotectVBProjProp UnlockVBA ' Sujith ID: 12482 AddReferences ' Sujith ID: 12482 ' protectVBProjProp #End If 'MsgBox "xla Workbook opened" Set eventInstance = New bwEvents End Sub

那么如何将activeworkbook设置为变量呢?

我不太确定中间的所有命令是什么,例如#If Mac ThenUnlockVBA

如果要将ActiveWorkbook设置为对象WRBK ,则需要在WRBK模块WRBK定义为Public ,然后使用类似下面的代码:

ThisWorkbook模块中的代码

Private Sub Workbook_Open()

    Set WRBK = ActiveWorkbook

    TestWorkbookName ' call sub <--  this is just to test the the workbook was assigned correctly

End Sub

常规模块中的代码

Option Explicit

Public WRBK As Workbook

Sub TestWorkbookName()

MsgBox WRBK.Name

End Sub

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM