excelselect已更改为特定的工作表

我search了很多关于我的问题的答案,但找不到任何帮助我的东西。

我想为特定的工作表使用Worksheet_SelectionChange`。 我想在代码中定义这个特定的工作表。

例子(这个例子没有意义,我知道,但它是显示我的问题的最好方法):

我在工作簿中有三个工作表: ws1ws2ws3

ws1ws3是空的, ws2有一些值。 当我打开工作簿时,我search哪个工作表不是空的。 这工作到目前为止。

现在,我发现哪个工作表不是空的,我想为此工作表设置Worksheet_SelectionChange

我该怎么做呢?

把这个放在THISWORKBOOK的代码区

这是给你的工作表的名称,如果单元格不是空的,当您select该工作表中的单元格。

 Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, _ ByVal Target As Range) If Application.WorksheetFunction.CountA(Sh.Cells) <> 0 Then MsgBox Sh.Name & " is not blank" With Sh '~~> Insert code here which you want to run for that sheet End With End If End Sub 

如果你不想这样做,那么你将不得不在相关的表单代码区注入代码。 在表单代码区域注入代码已经在这里讨论了很多次