从任何工作表中打开UserForm

时间:2014-07-31 06:15:50

标签: excel userform

我在Sheet1中有一个包含以下代码的工作簿:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean)
UserForm1.Show
End Sub

当我双击一行时,这会打开我的Userform,但前提是我在Sheet1上。

如何在不将其添加到每个工作表的情况下将其用于任何活动工作表?

1 个答案:

答案 0 :(得分:0)

如果您希望为工作簿中的活动工作表执行代码,则需要删除单个工作表的代码并执行以下操作:

  1. 打开VBA编辑器,找到" Microsoft Excel Objects"下的ThisWorkbook对象。
  2. 编辑它并在其中添加以下代码:

    Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
      UserForm1.Show
    End Sub
    
  3. 这意味着将检测工作簿中所有工作表的双击事件。如果将代码保留在工作表中,则首先触发工作表事件,然后激活工作簿。