Opret oversigtsark med diagramark

Denne makro indsætter en oversigt over alle andre ark i mappen i dennes første ark. Sørg derfor for at dette er tomt.  Den første løsning, som du kan se her, vil ikke virke, hvis der er diagramark i mappen. Til gengæld indsætter den her anførte løsning ikke hyperlink i arket, som den oprindelige gjorde. Dette skyldes at der ikke kan oprettes hyperlink til diagramark. Funktionaliteten vil sådan set virke, men klikker man på et hyperlink, der peger på navnet på et diagramark, vil man få en fejlmeddelelse.

Sub ListArk()
    Dim i As Long, so As Object
    Sheets(1).Range("A:A").ClearContents
    i = 0
    For Each so In Sheets
        i = i + 1
        Sheets(1).Cells(i, 1).Value = so.Name
    Next
End Sub

Vil man gerne have muligheden for at kunne "klikke" sig vej frem til både regneark og diagramark, man lægge denne kode i oversigtsarkets kodemodul. (Højreklik på arkfanen, vælg Vis kode, og sæt koden ind.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Intersect(Target, Range("a:a")) Is Nothing Then
        On Error Resume Next
        Charts(Target.Value).Activate
            If err.Number <> 0 Then
                Sheets(Target.Value).Activate
            End If
        On Error GoTo 0
    End If
End Sub

Denne kode betyder, at klikker man i en celle i A-kolonnen i oversigtsarket, der indeholder et arknavn, skiftes til dette ark, hvad enten det er et regneark eller et diagramark.

 

- Retur til makroer -