Jo flere ark en Excel-fil består af, jo mere uoverskuelig bliver den. Så kan det være rart med en indholdsfortegnelse, så man hurtigt kan navigere rundt på arkene.
Der findes ikke en sådan funktion i Excel. Men hvad der ikke findes, kan man programmere sig til. Følgende makro opretter en indholdsfortegnelse med hyperlinks til alle ark i projektmappen. Første gang makroen køres, placeres indholdfortegnelsen der, hvor markøren er. Efterfølgende vil den blot udvide indholdsfortegnelsen det sted, hvor den først blev oprettet.
Sådan gør du:
Makroen skal oprettes i den personlige makroprojektmappe. Hvis denne ikke allerede findes, kan man oprette den ved at indspille en makro uden noget indhold. I båndet vælges under fanen Vis: Makroer og Indspil makro:
Sørg for, at makroen bliver gemt i “Personlig makroprojektmappe”. Klik OK og stop umiddelbart herefter indspilningen ved at trykke på stopknappen, som du finder i nederste venstre hjørne i statusbjælken.
Skift til udviklingsmiljøet ved at trykke Alt+F11. I projekt-browseren i venstre side vil du nu kunne finde PERSONAL.XLSB og under denne Modules og Module1. Dobbeltklik på Module1 for at åbne den i kodevinduet:
I kodevinduet ses den makro, du optog. Denne slettes og i stedet for indsættes følgende makro:
Sub OpretIndholdFortegnelse() Dim Ark As Worksheet Dim tæller As Long Dim Home As Range 'Retur adresse, hvis indholdfortegnelsen opdateres Set Home = ActiveCell 'Forsøg på at gå til indholdsfortegnelsen vil fejle hvis den ikke findes On Error Resume Next 'Spring fejlen over Range("Indholdsfortegnelse").Worksheet.Activate Range("Indholdsfortegnelse").Select If Err.Number = 1004 Then 'Hvis fejlen opstår oprettes områdenavnet ActiveWorkbook.Names.Add Name:="Indholdsfortegnelse", RefersTo:= _ "=" & ActiveSheet.Name & "!" & ActiveCell.Address Err.Clear End If On Error GoTo 0 'Deaktiverer On error resume next ActiveCell.Value = "Indholdsfortegnelse" tæller = 1 For Each Ark In ActiveWorkbook.Worksheets ActiveSheet.Hyperlinks.Add Anchor:=ActiveCell.Offset(tæller, 0), Address:="", _ SubAddress:=Ark.Name & "!A1", TextToDisplay:=Ark.Name tæller = tæller + 1 Next Home.Worksheet.Activate 'Spring tilbage til Home Home.Select End Sub
Vend nu tilbage til Excel-regnearket og tilføj knappen i Officebåndet via Filer, Indstillinger, Tilpas båndet:
Makroen finder du i venstre side under makroer. Hvis du ikke allerede har et sted at placere makroen (højre side), kan du tilføje en ny fane og herunder en gruppe. Til sidst trækkes makroen over i fanen under den nye gruppe, og ikonet kan tilpasses.
Når du tester makroen, så sørg for at stå der, hvor du vil have din indholdsfortegnelse til at stå. Makroen opretter et områdenavn i indholdfortegnelsens første celle. Hvis du vil flytte indholdfortegnelsen til et andet sted, er det nemmest blot at markere den, klippe den ud og indsætte den der, hvor den i stedet for skal være. Herefter vil den blive opdateret det nye sted.