根据活动工作表名称dynamic更改Excel单元格值

我在Excel文件中有5张表,表名是MainProductionOutflowInflowOptions

有没有一种方法可以在“ Options页面中设置公式来引用当前正在查看的工作表的名称?

所以,如果我正在查看生产工作表,那么将在选项工作表的A1中放置生产,然后如果我单击查看出货工作表,它将更改选项工作表中的A1以显示出货。

尝试search,但无法find任何地方这样的任何地方。 谢谢你的帮助。

假设如果Options ,你不想发生任何事情,下面的子程序应该工作:

 Private Sub Workbook_SheetActivate(ByVal Sh As Object) If Sh.Name <> "Options" Then ThisWorkbook.Sheets("Options").Range("A1") = Sh.Name End If End Sub 

如果您仍希望在Options上显示Options时,只需删除IF-THEN块。 🙂

确保将以上内容复制并粘贴到ThisWorkbook代码区域。

让我们知道这是否有帮助。

ThiwWorkbook模块中添加

 Private Sub Workbook_SheetActivate(ByVal Sh As Object) Sheets("Options").[a1] = Sh.Name End Sub 

这会将当前工作表名称放在名为“ 选项 ”的工作表的单元格A1