Я работаю над файлом Excel, который имеет МНОГО листов, что делает навигацию между листами головной болью.
Есть ли способ показать листы в столбце слева (вместо строки под ячейками), чтобы я мог видеть больше сразу и, возможно, искать проще.
Я работаю над файлом Excel, который имеет МНОГО листов, что делает навигацию между листами головной болью.
Есть ли способ показать листы в столбце слева (вместо строки под ячейками), чтобы я мог видеть больше сразу и, возможно, искать проще.
Программирование - это самый известный быстрый режим, поэтому я хотел бы предложить вам код VBA (Macro), который поможет вам создать список листов на новом листе.
И вы сможете перемещаться между листами, просто нажав на название листа.
Private Sub Worksheet_Activate()
Dim xSheet As Worksheet
Dim xRow As Integer
Dim calcState As Long
Dim scrUpdateState As Long
Application.ScreenUpdating = False
xRow = 1
With Me
.Columns(1).ClearContents
.Cells(1, 1) = "Sheet-INDEX"
.Cells(1, 1).Name = "SheetIndex"
End With
For Each xSheet In Application.Worksheets
If xSheet.Name <> Me.Name Then
xRow = xRow + 1
With xSheet
.Range("A1").Name = "Start_" & xSheet.Index
.Hyperlinks.Add anchor: = .Range("A1"), Address: = "", _
SubAddress: = "Index", TextToDisplay: = "Back to Index"
End With
Me.Hyperlinks.Add anchor: = Me.Cells(xRow, 1), Address: = "", _
SubAddress: = "Start_" & xSheet.Index, TextToDisplay: = xSheet.Name
End If
Next
Application.ScreenUpdating = True
End Sub
Как это устроено:
Создайте новый лист и переименуйте его по вашему выбору. как SheetList или ListOfSheets.
Щелкните правой кнопкой мыши на новой вкладке имени листа и выберите View Code из меню.
В появившемся окне Copy and Paste выше показан код VBA в него.
Теперь запустите макрос, чтобы создать динамический список рабочих листов.
Обратите внимание, или как только вы нажмете на вкладку «Новый лист», код создаст список листов, так как код предназначен для события «Активация рабочего листа».