按【Alt+F11】键打开VBE,把以下代码放到thisworkbook,代码作用: 每次打开这个工作薄就可以把所有的表名重新提取一遍放到目录表的A列,防止有新增的表没有链接到。 如图: Private SubWorkbook_Open() On Error Resume Next Sheets("目录").Cells.Clear Sheets("目录").Range("A1")= "目录" k = 1 For Each sh In Sheets If sh.Name <>"目录" Then k = k+ 1 Sheets("目录").Cells(k, 1) = sh.Name End If Next Sheets("目录").Range("A:A").EntireColumn.AutoFit Sheets("目录").Range("A:A").EntireColumn.HorizontalAlignment= xlCenter End Sub 以下代码放到目录工作表下。 代码作用: Private SubWorksheet_SelectionChange(ByVal Target As Range) Dim sht As Worksheet On Error Resume Next If Target.Row < 2 OrTarget.Column > 1 Then Exit Sub For Each sht In Worksheets If sht.Name<> "目录" Then sht.Visible = xlSheetVeryHidden Next sht Sheets(Target.Value).Visible =xlSheetVisible Sheets(Target.Value).Select End Sub 操作动画如下: 今天的分享到此结束,如果想看更多历史文章,请从菜单所有文章查看。 |
|
来自: sunnynie2021 > 《待分类》