工作表打开时触发OnOpenExcelWorksheet事件?

soo*_*ise 10 events vba

如何在工作表打开时运行代码?(我要运行的代码包含在开始工作表中)

Tom*_*mmy 20

您可以将某些代码放在Worksheet_Activate()函数中,该函数将在选择工作表时运行.此外,当您离开wokrsheet并转到另一个时,使用Worksheet_Deactivate()来运行代码.这些函数放在工作表对象代码中.

Private Sub Worksheet_Activate()
    MsgBox ("Hi")
End Sub

Private Sub Worksheet_Deactivate()
    MsgBox ("Bye")
End Sub
Run Code Online (Sandbox Code Playgroud)


Ben*_*ack 10

我不确定如何在工作打开时运行代码,但是可以在工作簿打开时运行它.

在VBA编辑器中,打开名为"ThisWorkbook"的Microsoft Excel对象.在编辑器窗口的顶部,您应该看到两个下拉框:(常规)和(声明).将(常规)组合框更改为"工作簿".

这会给你一个叫做的方法Workbook_Open().打开Excel工作簿时,将执行此方法中的代码.


此外,当您选择了工作簿时,您可以使用一次性事件处理更多事件,可在(声明)部分中找到,例如SheetActivateSheetChanged.我没有使用过这些方法,但如果您需要与单个工作表相关的事件而不仅仅是整个工作簿,则可能需要尝试这些方法.