Place the code below in a standard module and run Indexing Sub so as to create or update a hyperlink index of all visible sheets in a new sheet called INDEX.
Also a "Back to index" will be added to the top of each visible sheet by inserting rows so to avoid deleting existing data.

enjoy

Code:
Dim wSheet As Worksheet, mySht As Worksheet
Dim l As Long

Sub Indexing()

RESPONSE = MsgBox("Select 'Yes' to create an index or 'No' to refresh the existing one. Select 'Cancel' to abort.", vbYesNoCancel)

If RESPONSE = vbYes Then
Call Generate_Index
MsgBox "Index created"
ElseIf RESPONSE = vbNo Then
Call Refresh_Index
MsgBox "Index updated"
Else
MsgBox "Operation cancelled"
End If

End Sub


Sub Refresh_Index()
    
With Application
    .ScreenUpdating = False
    .Cursor = xlWait
End With
    
    l = 1
    Set mySht = Sheets("INDEX")
    With mySht
        .Columns(1).ClearContents
        .Cells(1, 1) = "INDEX"
        .Cells(1, 1).name = "Index"
        .Cells(1, 1).font.Bold = True
        .Cells(1, 1).Interior.Color = 12859158
        .Cells(1, 1).font.ThemeColor = xlThemeColorDark1
    End With


    For Each wSheet In Worksheets

        If wSheet.Visible = True And wSheet.name <> "INDEX" And wSheet.Range("A1").Text = "Back to Index" Then
                   
            l = l + 1
                With wSheet
                    .Range("A1").name = "Start_" & wSheet.INDEX
                    .Hyperlinks.Add Anchor:=.Range("A1"), Address:="", _
                    SubAddress:="Index", TextToDisplay:="Back to Index"
                    .Range("A1").EntireColumn.AutoFit
                End With
                mySht.Hyperlinks.Add Anchor:=mySht.Cells(l, 1), Address:="", _
                SubAddress:="Start_" & wSheet.INDEX, TextToDisplay:=wSheet.name
                
        ElseIf wSheet.Visible = True And wSheet.name <> "INDEX" Then
                
                wSheet.Select
                Rows("1:1").Select
                For i = 1 To 2
                Selection.Insert Shift:=xlDown
                Next i
                Range("A1").Select
                
             l = l + 1
                With wSheet
                    .Range("A1").name = "Start_" & wSheet.INDEX
                    .Hyperlinks.Add Anchor:=.Range("A1"), Address:="", _
                    SubAddress:="Index", TextToDisplay:="Back to Index"
                    .Range("A1").EntireColumn.AutoFit
                End With
                mySht.Hyperlinks.Add Anchor:=mySht.Cells(l, 1), Address:="", _
                SubAddress:="Start_" & wSheet.INDEX, TextToDisplay:=wSheet.name
               
                
        End If
    Next wSheet
    
    mySht.Select

With Application
    .ScreenUpdating = True
    .Cursor = xlDefault
End With

End Sub

Sub Generate_Index()

With Application
    .ScreenUpdating = False
    .Cursor = xlWait
End With

    l = 1
    Worksheets.Add(Before:=Worksheets(1)).name = "INDEX"
    Set mySht = Sheets("INDEX")
    With mySht
        .Columns(1).ClearContents
        .Cells(1, 1) = "INDEX"
        .Cells(1, 1).name = "Index"
        .Cells(1, 1).font.Bold = True
        .Cells(1, 1).Interior.Color = 12859158
        .Cells(1, 1).font.ThemeColor = xlThemeColorDark1
    End With

    For Each wSheet In Worksheets

        If wSheet.Visible = True And wSheet.name <> "INDEX" Then
                wSheet.Select
                Rows("1:1").Select
                For i = 1 To 2
                Selection.Insert Shift:=xlDown
                Next i
                Range("A1").Select
                
            l = l + 1
                With wSheet
                    .Range("A1").name = "Start_" & wSheet.INDEX
                    .Hyperlinks.Add Anchor:=.Range("A1"), Address:="", _
                    SubAddress:="Index", TextToDisplay:="Back to Index"
                    .Range("A1").EntireColumn.AutoFit
                End With
                mySht.Hyperlinks.Add Anchor:=mySht.Cells(l, 1), Address:="", _
                SubAddress:="Start_" & wSheet.INDEX, TextToDisplay:=wSheet.name
        End If
    Next wSheet
    
    mySht.Select
    
With Application
    .ScreenUpdating = True
    .Cursor = xlDefault
End With
End Sub