Eu escrevi uma macro que ordenará os nomes das folhas em um índice em uma visão geral da equipe, bem como classificarei as guias na mesma pasta de trabalho. a etapa final é excluir folhas em branco ou não utilizadas nomeadas (zzass) e, em seguida, vincular o índice à planilha correspondente correta. Essa macro funciona se for adicionada à pasta de trabalho como deve, em vez de adicionar essa macro a 100 pastas de trabalho, tentei criar uma macro pessoal e tudo funciona, exceto a etapa final para criar os hiperlinks. Alguma ideia?

' feist Macro
    ActiveSheet.Range("$A$6:$AY$56").AutoFilter Field:=1
    ActiveWindow.SmallScroll Down:=3
    Range("A7:A56").Select
    Selection.Hyperlinks.Delete
    ActiveWorkbook.Worksheets(".Team_Overview").AutoFilter.Sort.SortFields.Clear
    ActiveWorkbook.Worksheets(".Team_Overview").AutoFilter.Sort.SortFields.Add Key _
        :=Range("A6:A56"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption _
        :=xlSortNormal
    With ActiveWorkbook.Worksheets(".Team_Overview").AutoFilter.Sort
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    ActiveWindow.SmallScroll Down:=3
    Range("A7:A56").Select
    Selection.Borders(xlDiagonalDown).LineStyle = xlNone
    Selection.Borders(xlDiagonalUp).LineStyle = xlNone
    With Selection.Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeTop)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeRight)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlInsideVertical)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlInsideHorizontal)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
'ActiveSheet.Protect UserInterfaceOnly:=True
    Range("A6:AY56").Select
    ActiveWorkbook.Worksheets(".Team_Overview").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets(".Team_Overview").Sort.SortFields.Add Key:=Range( _
        "A6"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortNormal
    With ActiveWorkbook.Worksheets(".Team_Overview").Sort
        .SetRange Range("A7:AY56")
        .Header = xlNo
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With


    ActiveSheet.Range("$A$6:$AY$56").AutoFilter Field:=1, Criteria1:=RGB(0, 0, _
        255), Operator:=xlFilterFontColor
    ActiveSheet.Range("$A$6:$AY$56").AutoFilter Field:=1
    ActiveSheet.Range("$A$6:$AY$56").AutoFilter Field:=1, Criteria1:="<>*zza*" _
        , Operator:=xlAnd

        Dim x As Long, y As Long
For x = 1 To Worksheets.Count
     For y = x To Worksheets.Count
         If UCase(Sheets(y).Name) < UCase(Sheets(x).Name) Then
               Sheets(y).Move before:=Sheets(x)
          End If
     Next
Next

Sheets(".Team_Overview").Select

'ActiveSheet.Protect UserInterfaceOnly:=True
    Range("A6:AY56").Select
    ActiveWorkbook.Worksheets(".Team_Overview").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets(".Team_Overview").Sort.SortFields.Add Key:=Range( _
        "A6"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortNormal
    With ActiveWorkbook.Worksheets(".Team_Overview").Sort
        .SetRange Range("A7:AY56")
        .Header = xlNo
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply

    End With
    ActiveSheet.Range("$A$6:$AY$56").AutoFilter Field:=1, Criteria1:="<>*zza*" _
        , Operator:=xlAnd '
    ActiveSheet.Range("$A$6:$AY$56").AutoFilter Field:=1, Criteria1:=RGB(0, 0, _
        255), Operator:=xlFilterFontColor
    ActiveSheet.Range("$A$6:$AY$56").AutoFilter Field:=1
    ActiveSheet.Range("$A$6:$AY$56").AutoFilter Field:=1, Criteria1:="<>*zza*" _
        , Operator:=xlAnd



Sheets(".Team_Overview").Select

   Dim ws As Worksheet
    Dim i As Integer

    i = 7

    For Each ws In ThisWorkbook.Worksheets
        If ws.Name <> "zzassoc 1" And ws.Name <> "zzassoc 2" And ws.Name <> "zzassoc 3" And ws.Name <> "zzassoc 4" And ws.Name <> "zzassoc 5" And ws.Name <> "zzassoc 6" And ws.Name <> "zzassoc 7" And ws.Name <> "zzassoc 8" And ws.Name <> "zzassoc 9" And ws.Name <> "zzassoc 10" And ws.Name <> "zzassoc 11" And ws.Name <> "zzassoc 12" And ws.Name <> "zzassoc 13" And ws.Name <> "zzassoc 14" And ws.Name <> "zzassoc 15" And ws.Name <> "zzassoc 16" And ws.Name <> "zzassoc 17" And ws.Name <> "zzassoc 18" And ws.Name <> "zzassoc 19" And ws.Name <> "zzassoc 20" And ws.Name <> "zzassoc 21" And ws.Name <> "zzassoc 22" And ws.Name <> "zzassoc 23" And ws.Name <> "zzassoc 24" And ws.Name <> "zzassoc 25" And ws.Name <> "zzassoc 26" And ws.Name <> "zzassoc 27" And ws.Name <> "zzassoc 28" And ws.Name <> "zzassoc 29" Then
        If ws.Name <> "zzassoc 30" And ws.Name <> "zzassoc 31" And ws.Name <> "zzassoc 32" And ws.Name <> "zzassoc 33" And ws.Name <> "zzassoc 34" And ws.Name <> "zzassoc 35" And ws.Name <> "zzassoc 36" And ws.Name <> "zzassoc 37" And ws.Name <> "zzassoc 38" And ws.Name <> "zzassoc 39" Then
        If ws.Name <> "zzassoc 40" And ws.Name <> "zzassoc 41" And ws.Name <> "zzassoc 42" And ws.Name <> "zzassoc 43" And ws.Name <> "zzassoc 44" And ws.Name <> "zzassoc 45" And ws.Name <> "zzassoc 46" And ws.Name <> "zzassoc 47" And ws.Name <> "zzassoc 48" And ws.Name <> "zzassoc 49" And ws.Name <> "zzassoc 50" And ws.Name <> ".Team_Overview" And ws.Name <> "Sheet1" Then

        ActiveWorkbook.Sheets(".Team_Overview").Hyperlinks.Add _
        Anchor:=ActiveWorkbook.Sheets(".Team_Overview").Cells(i, 1), _
        Address:="", _
        SubAddress:="'" & ws.Name & "'!A1", _
        TextToDisplay:=ws.Name

        i = i + 1
        End If
        End If
        End If
    Next ws

'
End Sub
Thomas
fonte