Nimiraportin luominen VBA-koodilla

Jos käytät työkirjassasi paljon nimettyjä soluja ja alueita, saatat yllättyä huomatessasi, että Excel ei tarjoa mahdollisuutta luetteloida jokaisen nimen tietoja. Hyödyllisiä tietoja näkyy Name Manager -valintaikkunassa, mutta näitä tietoja ei voi näyttää tulostetulla tavalla.

Tässä tarjottu VBA-koodi luo hyödyllisen raportin, joka kuvaa missä tahansa työkirjassa määritetyt nimet.

Esimerkkinimiraportti

Tässä näet esimerkin nimiraportista.

Nimiraportin luominen VBA-koodilla

Raportti, joka luodaan uudelle laskentataulukolle, sisältää seuraavat tiedot jokaisesta nimestä:

  • Nimi: Nimi.

  • RefersTo: Nimen määritelmä. Yleensä tämä on solu tai alue, mutta nimi voi myös määrittää kaavan.

  • Solut: Nimetyn alueen sisältämien solujen määrä. Nimetyille kaavoille tässä kentässä näkyy #N/A.

  • Laajuus: Nimen laajuus — joko työkirja tai sen laskentataulukon nimi, jolla nimi on voimassa.

  • Piilotettu: Totta, jos nimi on piilotettu. Jotkin apuohjelmat (kuten Solver) luovat piilotetut nimet, eivätkä ne näy Name Manager -valintaikkunassa.

  • Virhe: Tosi, jos nimi sisältää virheellisen viittauksen.

  • Linkki: Hyperlinkki, jota napsautettuna aktivoi nimetty alue. Vain soluihin tai alueisiin viittaavat nimet sisältävät linkin.

  • Kommentti: Kommentti nimelle, jos sellainen on.

VBA-koodi

Voit käyttää tätä koodia painamalla Alt+F11 aktivoidaksesi Visual Basic Editorin. Valitse sitten Lisää → Moduuli lisätäksesi uuden VBA-moduulin. Kopioi koodi ja liitä se uuteen moduuliin.

Sub GenerateNameReport()
Luo raportin kaikista työkirjan nimistä
' (Ei sisällä taulukoiden nimiä)
  Dim n As Name
  Himmeä rivi yhtä pitkä
  Dim CellCount vaihtoehtona
' Poistu, jos ei nimiä
  Jos ActiveWorkbook.Names.Count = 0 Sitten
    MsgBox "Aktiivisella työkirjalla ei ole määritettyjä nimiä."
    Poistu Subista
  Loppu Jos
' Poistu, jos työkirja on suojattu
  Jos ActiveWorkbook.ProtectStructure Sitten
    MsgBox "Uutta taulukkoa ei voi lisätä, koska työkirja on suojattu."
    Poistu Subista
  Loppu Jos
' Lisää uusi taulukko raportille
  ActiveWorkbook.Worksheets.Add
  ActiveSheet.Move After:=Sheets(ActiveWorkbook.Sheets.Count)
  ActiveWindow.DisplayGridlines = Epätosi
Lisää otsikon ensimmäinen rivi
  Alue("A1:H1"). Yhdistä
  Kanta-alueella ("A1")
    .Value = "Nimiraportti kohteelle: " & ActiveWorkbook.Name
    .Font.Size = 14
    .Font.Bold = Totta
    .HorizontalAlignment = xlCenter
  Lopeta kanssa
' Lisää otsikon toinen rivi
  Alue("A2:H2"). Yhdistä
  Kantaman kanssa ("A2")
    .Value = "Luotu" & Nyt
    .HorizontalAlignment = xlCenter
  Lopeta kanssa
' Lisää otsikot
  Alue("A4:H4") = Array("Nimi", "RefersTo", "Cells", _
    "Soveltamisala", "Piilotettu", "Virhe", "Linkki", "Kommentti")
' Selaa nimet läpi
  Rivi = 4
  Virheestä Jatka seuraavaksi
  Jokaiselle n:lle ActiveWorkbook.Namesissa
    Rivi = rivi + 1
    "Sarake A: Nimi
    Jos n.Name Like “*!*” Sitten
      Solut(Rivi, 1) = Split(n.Name, "!")(1) ' Poista arkin nimi
    Muu
      Solut(Rivi, 1) = n.Nimi
    Loppu Jos
    'Sarake B: RefersTo
    Solut(Rivi, 2) = "'" & n.RefersTo
    "Sarake C: Solujen lukumäärä
    CellCount = CVERr(xlErrNA) ' Nimetyn kaavan palautusarvo
    CellCount = n.RefersToRange.CountLarge
    Solut (Rivi, 3) = Solumäärä
    ' Sarake D: Soveltamisala
    Jos n.Name Like “*!*” Sitten
      Solut(Rivi, 4) = Split(n.Name, "!")(0) ' otteen arkin nimi
      Solut(Rivi, 4) = Korvaa(Solut(Rivi, 4), "'", "") 'poista heittomerkit
    Muu
      Solut (Rivi, 4) = "Työkirja"
    Loppu Jos
    'Sarake E: Piilotettu tila
    Solut (Rivi, 5) = Ei n. Näkyy
    'Sarake F: Virheellinen nimi
    Solut (Rivi, 6) = n. Viittaa tykkäämiseen "*[#]REF!*"
    "Sarake G: Hyperlinkki
    Jos ei Sovellus.IsNA(Cells(Row, 3)) Sitten
      ActiveSheet.Hyperlinks.Add _
        Ankkuri:=solut(rivi, 7), _
        Osoite:=““, _
        Alaosoite:=n.Nimi, _
        TextToDisplay:=n.Name
    Loppu Jos
    'Sarake H: Kommentti
    Solut(Rivi, 8) = n.Kommentti
  Seuraava n
' Muunna se taulukoksi
  ActiveSheet.ListObjects.Add _
    Lähdetyyppi:=xlSrcRange, _
    Lähde:=Alue(“A4”).CurrentRegion
' Säädä sarakkeiden leveyksiä
  Sarakkeet ("A:H"). Koko sarake. Automaattinen sovitus
Lopeta ala

Raportin luominen

Suorita GenerateNameReport-toiminto, ja raportti luodaan uudelle laskentataulukolle aktiivisessa työkirjassa. Koodin ei tarvitse olla työkirjassa, joka sisältää raportin nimet.

Jos pidät tätä koodia hyödyllisenä, haluat ehkä tallentaa sen henkilökohtaiseen makro-työkirjaasi tai luoda apuohjelman.


Kuinka estää Microsoft Wordia avaamasta tiedostoja vain luku -tilassa Windowsissa

Kuinka estää Microsoft Wordia avaamasta tiedostoja vain luku -tilassa Windowsissa

Kuinka estää Microsoft Wordia avaamasta tiedostoja vain luku -tilassa Windowsissa Microsoft Word avaa tiedostot vain luku -tilassa, jolloin niiden muokkaaminen on mahdotonta? Älä huoli, menetelmät ovat alla

Microsoft Word -asiakirjojen virheellisen tulostuksen korjaaminen

Microsoft Word -asiakirjojen virheellisen tulostuksen korjaaminen

Virheiden korjaaminen virheellisten Microsoft Word -asiakirjojen tulostuksessa. Virheet tulostettaessa Word-asiakirjoja, joissa on muuttuneet fontit, sotkuiset kappaleet, puuttuva teksti tai kadonnut sisältö ovat melko yleisiä. Älä kuitenkaan

Pyyhi kynä- ja korostuspiirrokset PowerPoint-dioistasi

Pyyhi kynä- ja korostuspiirrokset PowerPoint-dioistasi

Jos olet piirtänyt PowerPoint-dioihin esityksen aikana kynää tai korostuskynää, voit tallentaa piirustukset seuraavaa esitystä varten tai poistaa ne, jotta seuraavan kerran näytät ne. Aloitat puhtailla PowerPoint-dioilla. Pyyhi kynä- ja korostuskynäpiirrokset noudattamalla näitä ohjeita: Pyyhi rivit yksi kerrallaan […]

Tyylikirjaston sisältö SharePoint 2010:ssä

Tyylikirjaston sisältö SharePoint 2010:ssä

Tyylikirjasto sisältää CSS-tiedostoja, Extensible Stylesheet Language (XSL) -tiedostoja ja kuvia, joita käyttävät ennalta määritetyt sivupohjat, sivuasettelut ja säätimet SharePoint 2010:ssä. CSS-tiedostojen etsiminen julkaisusivuston tyylikirjastosta: Valitse Sivuston toiminnot→ Näytä Kaikki sivuston sisältö. Sivuston sisältö tulee näkyviin. Style-kirjasto sijaitsee […]

Muotoile numerot tuhansiksi ja miljooniksi Excel-raporteissa

Muotoile numerot tuhansiksi ja miljooniksi Excel-raporteissa

Älä hukuta yleisöäsi jättimäisillä numeroilla. Microsoft Excelissä voit parantaa koontinäyttöjesi ja raporttiesi luettavuutta muotoilemalla numerot näyttämään tuhansia tai miljoonia.

SharePoint-sivustojen jakaminen ja seuraaminen

SharePoint-sivustojen jakaminen ja seuraaminen

Opi käyttämään SharePointin sosiaalisen verkostoitumisen työkaluja, joiden avulla yksilöt ja ryhmät voivat kommunikoida, tehdä yhteistyötä, jakaa ja pitää yhteyttä.

Kuinka muuntaa päivämäärät Julian-muotoihin Excelissä

Kuinka muuntaa päivämäärät Julian-muotoihin Excelissä

Juliaanisia päivämääriä käytetään usein valmistusympäristöissä aikaleimana ja pikaviitteenä eränumerolle. Tämän tyyppisen päivämääräkoodauksen avulla jälleenmyyjät, kuluttajat ja huoltoedustajat voivat tunnistaa tuotteen valmistusajankohdan ja siten tuotteen iän. Julian-päivämääriä käytetään myös ohjelmoinnissa, armeijassa ja tähtitiedessä. Erilainen […]

Access-verkkosovelluksen luominen

Access-verkkosovelluksen luominen

Voit luoda verkkosovelluksen Access 2016:ssa. Mikä verkkosovellus sitten on? No, verkko tarkoittaa, että se on verkossa, ja sovellus on vain lyhenne sanoista "sovellus". Mukautettu verkkosovellus on online-tietokantasovellus, jota käytetään pilvestä selaimen avulla. Rakennat ja ylläpidät verkkosovellusta työpöytäversiossa […]

Pikakäynnistyspalkki SharePoint 2010:ssä

Pikakäynnistyspalkki SharePoint 2010:ssä

Useimmat SharePoint 2010:n sivut näyttävät navigointilinkkien luettelon pikakäynnistyspalkissa sivun vasemmassa reunassa. Pikakäynnistyspalkki näyttää linkit esitellyn sivuston sisältöön, kuten luetteloihin, kirjastoihin, sivustoihin ja julkaisusivuihin. Pikakäynnistyspalkki sisältää kaksi erittäin tärkeää linkkiä: Koko sivuston sisältö -linkki: […]

Mitä Ratkaisijan virheilmoitukset Excelissä tarkoittavat?

Mitä Ratkaisijan virheilmoitukset Excelissä tarkoittavat?

Yksinkertaisille ongelmille Excelin Ratkaisija löytää yleensä nopeasti optimaaliset Ratkaisijamuuttujien arvot tavoitefunktiolle. Mutta joissakin tapauksissa Ratkaisijalla on vaikeuksia löytää Solver-muuttujan arvoja, jotka optimoivat tavoitefunktion. Näissä tapauksissa Ratkaisija näyttää yleensä viestin tai virheilmoituksen, joka kuvaa tai käsittelee ongelmaa, jonka […]