Indholdsfortegnelse:
Video: Oprettelse af en menu og menupunkter i WordPress 2024
Hvis du bruger mange navngivne celler og intervaller i din projektmappe, kan du blive overrasket over at opdage, at Excel ikke giver mulighed for at liste detaljerne for hvert navn. Nyttige oplysninger vises i dialogboksen Navnemanager, men der er ingen mulighed for at vise disse oplysninger på en måde, der kan udskrives.
VBA-koden, der tilbydes her, genererer en nyttig rapport, der beskriver de navne, der er defineret i en projektmappe.
Eksempel Navn Rapport
Her ses et eksempel på en navnerapport.
Rapporten, som er oprettet på et nyt regneark, indeholder følgende oplysninger for hvert navn:
-
Navn: Navnet.
-
RefersTo: Definitionen af navnet. Normalt vil dette være en celle eller et interval, men et navn kan også definere formel.
-
Celler: Antallet af celler indeholdt i det navngivne område. For navngivne formler viser dette felt # N / A.
-
Omfang: Navnet på navnet - enten Workbook eller navnet på det specifikke regneark, som navnet er gyldigt på.
-
Skjult: Sandt hvis navnet er skjult. Skjulte navne oprettes af nogle tilføjelser (f.eks. Solver) og vises ikke i dialogboksen Navnemanager.
-
Fejl: Sandt hvis navnet indeholder en fejlagtig reference.
-
Link: Et hyperlink, der, når det klikkes, aktiverer det navngivne område. Kun navne, der refererer til celler eller intervaller, indeholder et link.
-
Kommentar: Kommentar til navnet, hvis nogen.
VBA-koden
Hvis du vil bruge denne kode, skal du trykke på Alt + F11 for at aktivere Visual Basic Editor. Vælg derefter Indsæt → Modul for at indsætte et nyt VBA-modul. Kopier koden og indsæt den i det nye modul.
Sub GenerateNameReport () 'Genererer en rapport for alle navne i arbejdsbogen' (Inkluderer ikke tabelnavne) Dim n Som Navn Dim Række Længe Dim CellCount Som Variant 'Afslut hvis ingen navne Hvis ActiveWorkbook. Navne. Count = 0 Then MsgBox "Den aktive arbejdsbog har ingen definerede navne. "Exit Sub End Hvis" Exit hvis workbook er beskyttet Hvis ActiveWorkbook. ProtectStructure Then MsgBox "Et nyt ark kan ikke tilføjes, fordi arbejdsbogen er beskyttet. "Exit Sub End If 'Indsæt et nyt ark til rapporten ActiveWorkbook. Regneark. Tilføj ActiveSheet. Flyt efter: = Ark (ActiveWorkbook. Sheets. Count) ActiveWindow. DisplayGridlines = False 'Tilføj første linje med titel Range ("A1: H1"). Flet med rækkevidde ("A1"). Værdi = "Navn Rapport for:" & ActiveWorkbook. Navn. Font. Størrelse = 14. Font. Fed = rigtig HorizontalAlignment = xlCenter End With 'Tilføj anden linje af titel Range ("A2: H2"). Flet med rækkevidde ("A2"). Værdi = "Genereret" & nu. HorizontalAlignment = xlCenter Slut med 'Tilføj overskrifterne Range ("A4: H4") = Array ("Navn", "RefersTo", "Cells", _ "Scope", "Skjult", "Fejl", "Link" Kommentar ") 'Loop gennem navnene Row = 4 På Fejl Genoptag Næste for hver n I ActiveWorkbook.Navne Række = Række + 1 'Kolonne A: Navn Hvis n. Navn som "*! * "Så celler (række, 1) = Split (n. Navn,"! ") (1) 'Fjern arknavn Else Cells (Row, 1) = n. Navn Slut Hvis 'Kolonne B: RefersTo Cells (Row, 2) = "'" & n. RefersTo 'Kolonne C: Antal celler CellCount = CVErr (xlErrNA)' Returværdi for navngivet formel CellCount = n. RefersToRange. CountLarge Cells (Row, 3) = CellCount 'Kolonne D: Omfang Hvis n. Navn som "*! * "Så celler (række, 4) = Split (n. Navn,"! ") (0) 'Ekstra ark navn Celler (Row, 4) = Erstatter (Celler (Row, 4),' '" 'fjern apostrofer Else celler (række, 4) = "Arbejdsbog" Afslut, hvis' Kolonne E: Skjulte statusceller (række, 5) = Ikke n. Synlig 'Kolonne F: Fejlsomt navn Celler (række, 6) = n. RefersTo Like "* [#] REF! * "'Kolonne G: Hyperlink Hvis ikke applikation. IsNA (Celler (række, 3)) Så ActiveSheet. Hyperlinks. Tilføj _ Anker: = Celler (række, 7), _ Adresse: = "", _ SubAddress: = n. Navn, _ TextToDisplay: = n. Navn Slut Hvis 'Kolonne H: Kommentarceller (række, 8) = n. Kommentar Næste n 'Konverter det til en tabel ActiveSheet. ListObjects. Tilføj _ SourceType: = xlSrcRange, _ Kilde: = Range ("A4"). CurrentRegion 'Juster kolonnens bredde kolonner ("A: H"). EntireColumn. AutoFit End Sub
Generer en rapport
Udfør GenerateNameReport-proceduren, og rapporten genereres på et nyt regneark i den aktive arbejdsbog. Koden behøver ikke at være i projektmappen, der indeholder navnene på rapporten.
Hvis du finder denne kode nyttig, kan du gemme den i din personlige makro-arbejdsbog eller oprette et tilføjelsesprogram.