Névjelentés készítése VBA kóddal

Ha sok elnevezett cellát és tartományt használ a munkafüzetben, meglepődve tapasztalhatja, hogy az Excel nem teszi lehetővé az egyes nevek részleteinek felsorolását. Hasznos információk jelennek meg a Névkezelő párbeszédpanelen, de nincs mód arra, hogy ezeket az információkat nyomtatható módon jelenítsék meg.

Az itt kínált VBA-kód hasznos jelentést készít, amely leírja a munkafüzetekben meghatározott neveket.

Példa név jelentés

Itt láthat egy példát a névjelentésre.

Névjelentés készítése VBA kóddal

Az új munkalapon létrehozott jelentés a következő információkat tartalmazza minden névhez:

  • Név: A név.

  • RefersTo: A név meghatározása. Általában ez egy cella vagy tartomány, de egy név képletet is meghatározhat.

  • Cellák: A megnevezett tartományban található cellák száma. Elnevezett képleteknél ez a mező a #N/A értéket jeleníti meg.

  • Hatály: A név hatóköre – vagy munkafüzet, vagy annak a konkrét munkalapnak a neve, amelyen a név érvényes.

  • Rejtett: Igaz, ha a név rejtett. A rejtett neveket egyes bővítmények (például a Solver) hozzák létre, és nem jelennek meg a Névkezelő párbeszédpanelen.

  • Hiba: Igaz, ha a név hibás hivatkozást tartalmaz.

  • Hivatkozás: Hiperhivatkozás, amelyre kattintva aktiválja a megnevezett tartományt. Csak a cellákra vagy tartományokra utaló nevek tartalmaznak hivatkozást.

  • Megjegyzés: A név megjegyzése, ha van.

A VBA kód

A kód használatához nyomja le az Alt+F11 billentyűkombinációt a Visual Basic Editor aktiválásához. Ezután válassza a Beszúrás → Modul lehetőséget egy új VBA-modul beillesztéséhez. Másolja ki a kódot, és illessze be az új modulba.

Sub GenerateNameReport()
' Jelentést generál a munkafüzetben lévő összes névről
' (Nem tartalmazza a táblaneveket)
  Dim n As Name
  Dim Row As Long
  Dim CellCount As Variant
Kilépés, ha nincsenek nevek
  Ha ActiveWorkbook.Names.Count = 0 Akkor
    MsgBox "Az aktív munkafüzetnek nincsenek meghatározott nevei."
    Exit Sub
  Vége Ha
' Lépjen ki, ha a munkafüzet védett
  Ha ActiveWorkbook.ProtectStructure Akkor
    MsgBox "Nem adható hozzá új munkalap, mert a munkafüzet védett."
    Exit Sub
  Vége Ha
' Helyezzen be egy új lapot a jelentéshez
  ActiveWorkbook.Worksheets.Add
  ActiveSheet.Move After:=Táblázatok(ActiveWorkbook.Sheets.Count)
  ActiveWindow.DisplayGridlines = Hamis
' Adja hozzá a cím első sorát
  Tartomány(“A1:H1”). Egyesítés
  Tartománnyal ("A1")
    .Value = "Névjelentés a következőhöz: " & ActiveWorkbook.Name
    .Font.Size = 14
    .Font.Bold = Igaz
    .HorizontalAlignment = xlCenter
  Vége ezzel
' Adja hozzá a cím második sorát
  Tartomány(“A2:H2”). Egyesítés
  Tartommal ("A2")
    .Value = "Létrehozva" & Most
    .HorizontalAlignment = xlCenter
  Vége ezzel
' Adja hozzá a fejléceket
  Tartomány("A4:H4") = Array("Név", "RefersTo", "Cells", _
    „Hatókör”, „Rejtett”, „Hiba”, „Link”, „Megjegyzés”)
– Lapozd át a neveket
  sor = 4
  Hiba esetén Folytatás a következőre
  Minden n-hez Az ActiveWorkbook.Namesben
    Sor = sor + 1
    „A oszlop: Név
    Ha n.Név Mint „*!*” Akkor
      Cells(Sor, 1) = Felosztás(n.Név, "!")(1) ' Lapnév eltávolítása
    Más
      Cellák(sor, 1) = n.Név
    Vége Ha
    „B oszlop: RefersTo
    Cells(Sor, 2) = "'" & n.RefersTo
    „C oszlop: A cellák száma
    CellCount = CVERr(xlErrNA) ' A megnevezett képlet visszatérési értéke
    CellCount = n.RefersToRange.CountLarge
    Cells(Sor, 3) = CellCount
    D oszlop: Hatály
    Ha n.Név Mint „*!*” Akkor
      Cells(Sor, 4) = Felosztás(n.Név, "!")(0) ' kivonatlap neve
      Cells(Sor, 4) = Csere(Cellák(Sor, 4), "'", "") 'eltávolítja az aposztrófokat
    Más
      Cellák (4. sor) = „Munkafüzet”
    Vége Ha
    „E oszlop: Rejtett állapot
    Cells(Sor, 5) = Nem n.Látható
    „F oszlop: Hibás név
    Cells(Sor, 6) = n. RefersTo Like „*[#]REF!*”
    „G oszlop: Hiperhivatkozás
    Ha nem Alkalmazás.IsNA(Cells(Row, 3)) Akkor
      ActiveSheet.Hyperlinks.Add _
        Horgony:=Cellák (7. sor), _
        Cím:=““, _
        Alcím:=n.Név, _
        TextToDisplay:=n.Name
    Vége Ha
    „H oszlop: Megjegyzés
    Cells(Sor, 8) = n.Megjegyzés
  Következő n
' Alakítsa át táblázattá
  ActiveSheet.ListObjects.Add _
    SourceType:=xlSrcRange, _
    Forrás:=Tartomány(“A4”).CurrentRegion
' Állítsa be az oszlopszélességet
  Oszlopok („A:H”).Teljes oszlop.Automatikus illeszkedés
Vége Sub

Jelentés generálása

Hajtsa végre a GenerateNameReport eljárást, és a jelentés egy új munkalapon jön létre az aktív munkafüzetben. A kódnak nem kell szerepelnie a jelentés neveit tartalmazó munkafüzetben.

Ha hasznosnak találja ezt a kódot, érdemes lehet tárolni a Személyes makró munkafüzetben, vagy létrehozni egy bővítményt.

Leave a Comment

Lábjegyzetek és végjegyzetek létrehozása a Word 2013-ban

Lábjegyzetek és végjegyzetek létrehozása a Word 2013-ban

Lábjegyzetek és végjegyzetek létrehozása a Word 2013-ban. Részletes útmutató, hogyan készíthet különféle stílusú jegyzeteket bibliográfiai információkhoz vagy magyarázó megjegyzésekhez.

Hogyan lehet kiemelni a statisztikailag kiugró értékeket az Excelben

Hogyan lehet kiemelni a statisztikailag kiugró értékeket az Excelben

Tudjon meg mindent arról, hogyan lehet az Excelben kiemelni a statisztikailag kiugró értékeket, mégpedig egyszerű eszközökkel és módszerekkel. Kiemelt figyelmet fordítunk a kiugró értékek azonosítására és kezelésére.

Hogyan lehet mintát venni az adatokból Excelben

Hogyan lehet mintát venni az adatokból Excelben

Az Excel Mintavételi eszközével véletlenszerűen kiválaszthat elemeket egy adatkészletből vagy választhat minden n-edik elemet. Ismerje meg, hogyan használhatja ezt a hasznos funkciót az adatelemzéshez!

10 klassz trükk a Microsoft Word 2019 programmal

10 klassz trükk a Microsoft Word 2019 programmal

Fedezze fel a Microsoft Word 2019 legjobb trükkjeit, amelyek segítenek a hatékonyabb munkavégzésben. Tudd meg, hogyan használhatod ki a program funkcióit!

Bekezdések igazítása és behúzása a Word 2019-ben

Bekezdések igazítása és behúzása a Word 2019-ben

A Word 2019-ben a bekezdések igazítása és behúzása kulcsfontosságú a dokumentumok megfelelő megjelenítéséhez. Ismerje meg a formázási lehetőségeket és tippeket a hatékonyabb munkához.

Az Excel 2019 Solver használata

Az Excel 2019 Solver használata

Fedezze fel, hogyan használhatja az Excel 2019 Solver bővítményt a komplex problémák megoldására. A célcella, változócellák és kényszerek beállítása lépésről lépésre.

Dinamikus elemek hozzáadásához használja a Word 2019 mezőit

Dinamikus elemek hozzáadásához használja a Word 2019 mezőit

A Word lehetővé teszi dinamikus elemek hozzáadását a dokumentumhoz. Fedezze fel, hogyan lehet különböző mezőket használni a Word programban a dinamikus tartalom létrehozásához.

Oszloptípusok a SharePoint 2010-ben

Oszloptípusok a SharePoint 2010-ben

A SharePoint 2010 oszlopai az adatok tárolására szolgálnak. Fedezze fel a különböző oszlop típusokat és azok alkalmazását a SharePoint rendszeren belül.

A nem kívánt szöveg eltávolítása a Word 2013-ban

A nem kívánt szöveg eltávolítása a Word 2013-ban

A Word 2013 szövegtörlésének képessége kulcsfontosságú, legyen szó szövegalkotásról vagy törlésről. Ismerje meg a hatékony szövegtörlési módszereket!

Hogyan készítsünk fotóalbumot a PowerPoint 2016-ban

Hogyan készítsünk fotóalbumot a PowerPoint 2016-ban

A fotóalbum funkció a PowerPoint 2016-ban lehetővé teszi, hogy egyszerre több fényképet illesszen be egy prezentációba, megkönnyítve ezzel a többszörös képek kezelését.