冻结工作表选项卡(Microsoft Excel)
Jonathan的工作簿包含五十多个工作表,其中一个工作表名为“ Main”,并定位为工作簿中的第一个选项卡。他经常不得不恢复到“主要”
工作表。为了显示工作表,他必须一次单击一个选项卡,或者一直滚动到选项卡的左侧(通过单击选项卡最左侧的控件),然后选择“主要”选项卡。最后一种方法最简单,但仍然很费时间。 Jonathan想知道是否有一种冻结工作表选项卡的方法,就像冻结窗格一样。他希望“主要”标签始终可见,并且其右侧的标签可以滚动。
简短的答案是没有,Excel中没有冻结工作表选项卡的方法。话虽这么说,您可以做一些事情来获得想要的结果。
一种可能的解决方案是在工作表中使用超链接。许多人建立了一个系统,其中他们的主要工作表用作该工作簿中其他工作表的目录。每个工作表都是从主工作表超链接的,每个非主工作表都具有一个指向主工作表的超链接。因此,他们只需单击超链接即可在主工作表和辅助工作表之间快速浏览。
另一种选择是记住您可以右键单击Excel窗口底部选项卡左侧的工作表选项卡控件。
完成后,您将获得前十五个工作表名称的列表,并且可以轻松选择“主要”工作表。
另一个选择是设置一个非常简单的宏,该宏始终显示“主要”工作表:
Sub GoToMain() Sheets("Main").Select End Sub
您可以将此宏分配给快捷键,也可以将其添加到“快速访问”工具栏中,以便可以非常快速地使用它。运行时,始终显示名为“ Main”的工作表。
如果您绝对希望在“选项卡”区域中始终显示“主”页面,则必须诉诸宏,该宏将不断对选项卡进行重新排序,以便“主”页面始终可见。
Private Sub Workbook_SheetActivate(ByVal Sh As Object) Dim sc As Long ' count of sheets Dim NewPos As Long ' index of serlected sheet Application.EnableEvents = False Application.ScreenUpdating = False If ActiveSheet.Index <> 1 Then sc = Sheets.Count NewPos = ActiveSheet.Index For i = 2 To NewPos - 1 Sheets(2).Move After:=Sheets(sc) Next i Sheets(1).Activate Sheets(2).Activate End If Application.ScreenUpdating = True Application.EnableEvents = True End Sub
该宏必须是ThisWorkbook对象的一部分,因此请确保将其添加到VBA编辑器中的适当位置。最简单的方法是执行以下步骤:
。按Alt + F11以显示Visual Basic编辑器。
。在“项目”窗口中,双击“ ThisWorkbook”对象。 (确保双击与要在其中添加宏的工作簿关联的ThisWorkbook对象。)您将看到ThisWorkbook对象的代码窗口。
。将上面的代码放在代码窗口中。
宏始终将工作表从位置2移动到您拥有的工作表数量,以便所需的工作表位于第二位置。这意味着工作表处于第一位置(主)
永不动摇。
注意:
如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。
_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。
本技巧(8937)适用于Office 365中的Microsoft Excel 2007、2010、2013、2016、2019和Excel。您可以在此处为Excel的较旧菜单界面找到此技巧的版本: