【发布时间】:2021-07-19 19:06:24
【问题描述】:
Private Sub Worksheet_Deactivate()
Msgbox(worksheet.Name)
End Sub
当我按下感兴趣的工作表以外的任何工作表时,如何获取最后一个停用的工作表。
【问题讨论】:
标签: excel vba excel-formula vba6
Private Sub Worksheet_Deactivate()
Msgbox(worksheet.Name)
End Sub
当我按下感兴趣的工作表以外的任何工作表时,如何获取最后一个停用的工作表。
【问题讨论】:
标签: excel vba excel-formula vba6
ThisWorkbook 代码模块(在声明区)之上创建一个Public 变量:Public lastSheetName As String
Workbook_SheetDeactivate 事件中(也在ThisWorkbook 代码模块中):Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
lastSheetName = Sh.name
End Sub
Sub 或在另一个事件代码中返回最后一个停用工作表的名称。尝试将下一个代码粘贴到标准模块中并运行它。当然,在您停用至少一张工作表之后...Sub LastDeactivatedSheet()
MsgBox ThisWorkbook.lastSheetName
End Sub
3.a 或者把同样的代码放在Workbook_SheetActivate事件中,这样:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
MsgBox "You are coming from " & ThisWorkbook.lastSheetName
End Sub
每次您激活另一张表时,它都会告诉您您来自哪张表...
【讨论】: