Vardo ataskaitos kūrimas naudojant VBA kodą

Jei darbaknygėje naudojate daug pavadintų langelių ir diapazonų, galite nustebti sužinoję, kad „Excel“ nepateikia būdo pateikti kiekvieno vardo išsamios informacijos. Naudinga informacija rodoma dialogo lange Vardų tvarkyklė, tačiau nėra būdo pateikti šią informaciją taip, kad ją būtų galima atspausdinti.

Čia siūlomas VBA kodas sukuria naudingą ataskaitą, kurioje aprašomi bet kurioje darbaknygėje apibrėžti pavadinimai.

Pavadinimo ataskaitos pavyzdys

Čia matote vardo ataskaitos pavyzdį.

Vardo ataskaitos kūrimas naudojant VBA kodą

Ataskaitoje, kuri sukuriama naujame darbalapyje, pateikiama tokia informacija apie kiekvieną pavadinimą:

  • Vardas: Vardas.

  • RefersTo: pavadinimo apibrėžimas. Paprastai tai bus langelis arba diapazonas, tačiau pavadinimas taip pat gali apibrėžti formulę.

  • Langeliai: pavadintame diapazone esančių langelių skaičius. Vardinėms formulėms šiame lauke rodoma #N/A.

  • Taikymo sritis: pavadinimo apimtis – darbaknygė arba konkretaus darbalapio, kuriame pavadinimas galioja, pavadinimas.

  • Paslėpta: tiesa, jei vardas paslėptas. Paslėptus pavadinimus sukuria kai kurie priedai (pvz., Solver) ir jie nerodomi dialogo lange Vardų tvarkyklė.

  • Klaida: tiesa, jei pavadinime yra klaidinga nuoroda.

  • Nuoroda: hipersaitas, kurį spustelėjus suaktyvinamas pavadintas diapazonas. Tik pavadinimai, kurie nurodo langelius arba diapazonus, apima nuorodą.

  • Komentaras: pavadinimo komentaras, jei toks.

VBA kodas

Norėdami naudoti šį kodą, paspauskite Alt + F11, kad suaktyvintumėte Visual Basic redaktorių. Tada pasirinkite Įterpti → Modulis, kad įterptumėte naują VBA modulį. Nukopijuokite kodą ir įklijuokite jį į naują modulį.

Sub GenerateNameReport()
Sugeneruoja visų darbaknygės vardų ataskaitą
“ (Neįtraukiami lentelių pavadinimai)
  Dim n As Name
  Dim Row As Long
  Dim CellCount kaip variantas
Išeik, jei nėra vardų
  Jei ActiveWorkbook.Names.Count = 0 Tada
    MsgBox "Aktyvi darbaknygė neturi apibrėžtų pavadinimų."
    Išeiti iš sub
  Pabaiga, jei
Išeikite, jei darbaknygė apsaugota
  Jei ActiveWorkbook.ProtectStructure Tada
    MsgBox "Negalima pridėti naujo lapo, nes darbaknygė yra apsaugota."
    Išeiti iš sub
  Pabaiga, jei
Įdėkite naują ataskaitos lapą
  ActiveWorkbook.Worksheets.Add
  ActiveSheet.Move After:=Lapai(ActiveWorkbook.Sheets.Count)
  ActiveWindow.DisplayGridlines = Netiesa
' Pridėti pirmą pavadinimo eilutę
  Diapazonas („A1:H1“). Sujungti
  Su diapazonu („A1“)
    .Value = "Vardo ataskaita: " & ActiveWorkbook.Name
    .Šriftas.Dydis = 14
    .Šriftas.Bold = Tiesa
    .HorizontalAlignment = xlCenter
  Baigti su
' Pridėti antrą pavadinimo eilutę
  Diapazonas („A2:H2“). Sujungti
  Su diapazonu („A2“)
    .Value = „Sukurta“ ir dabar
    .HorizontalAlignment = xlCenter
  Baigti su
' Pridėti antraštes
  Diapazonas ("A4:H4") = masyvas ("pavadinimas", "nuoroda į", "ląstelės", _
    „Taikymo sritis“, „Paslėpta“, „Klaida“, „Nuoroda“, „Komentaras“)
' Perskaitykite pavadinimus
  Eilė = 4
  Įvykus klaidai, tęskite toliau
  Kiekvienam n ActiveWorkbook.Names
    Eilutė = eilutė + 1
    „A stulpelis: pavadinimas
    Jei n.Vardas Kaip „*!*“ Tada
      Langeliai (eilutė, 1) ​​= Padalyti (n.Pavadinimas, "!") (1) ' Pašalinti lapo pavadinimą
    Kitas
      Langeliai (eilutė, 1) ​​= n.Pavadinimas
    Pabaiga, jei
    „B stulpelis: RefersTo
    Langeliai (eilutė, 2) = "'" & n. RefersTo
    „C stulpelis: langelių skaičius
    CellCount = CVERr(xlErrNA) ' Įvardintos formulės grąžinimo reikšmė
    CellCount = n.RefersToRange.CountLarge
    Ląstelės (eilutė, 3) = ląstelių skaičius
    D stulpelis: Taikymo sritis
    Jei n.Vardas Kaip „*!*“ Tada
      Ląstelės (eilutė, 4) = padalinti (n.Pavadinimas, "!") (0) ' ištraukos lapo pavadinimas
      Langeliai (eilutė, 4) = Pakeisti (Ląstelės (eilutė, 4), „'“, „“) 'pašalinti apostrofus
    Kitas
      Langeliai (eilutė, 4) = „Darbo knyga“
    Pabaiga, jei
    „E stulpelis: paslėpta būsena
    Langeliai (eilutė, 5) = ne n. Matoma
    „F stulpelis: klaidingas pavadinimas
    Langeliai (eilutė, 6) = n. RefersTo Like "*[#]REF!*"
    „G stulpelis: hipersaitas
    Jei ne taikymas.IsNA(Cells(Row, 3)) Tada
      ActiveSheet.Hyperlinks.Add _
        Anchor:=Ląstelės (eilutė, 7), _
        Adresas:=““, _
        SubAdresas:=n.Vardas, _
        TextToDisplay:=n.Vardas
    Pabaiga, jei
    „H stulpelis: komentaras
    Langeliai (eilutė, 8) = n.Komentuoti
  Kitas n
' Konvertuokite jį į lentelę
  ActiveSheet.ListObjects.Add _
    Šaltinio tipas:=xlSrcRange, _
    Šaltinis:=Rangas(“A4”).DabartinisRegionas
' Sureguliuokite stulpelių plotį
  Stulpeliai („A:H“).Visa stulpelis.Automatinis pritaikymas
Pabaigos sub

Ataskaitos generavimas

Vykdykite procedūrą GenerateNameReport ir ataskaita bus sugeneruota naujame aktyviosios darbaknygės darbalapyje. Kodas nebūtinai turi būti darbaknygėje, kurioje yra ataskaitos pavadinimai.

Jei šis kodas jums naudingas, galbūt norėsite jį išsaugoti asmeninėje makrokomandų knygelėje arba sukurti priedą.

Leave a Comment

Specialiųjų simbolių įterpimas į Word 2010

Specialiųjų simbolių įterpimas į Word 2010

Kartais gali prireikti įterpti neįprastą simbolį į Word 2010 dokumentą. Perskaitykite, kaip lengvai tai padaryti su mūsų patarimais ir simbolių sąrašu.

Kaip naudoti logines funkcijas „Excel 2010“ formulėse

Kaip naudoti logines funkcijas „Excel 2010“ formulėse

„Excel 2010“ naudoja septynias logines funkcijas – IR, FALSE, IF, IFERROR, NOT, OR ir TRUE. Sužinokite, kaip naudoti šias funkcijas efektyviai.

Kaip paslėpti ir rodyti eilutes ir stulpelius programoje „Excel 2016“.

Kaip paslėpti ir rodyti eilutes ir stulpelius programoje „Excel 2016“.

Sužinokite, kaip paslėpti ir atskleisti stulpelius bei eilutes programoje „Excel 2016“. Šis patarimas padės sutaupyti laiko ir organizuoti savo darbalapius.

Kaip apskaičiuoti slenkančius vidurkius programoje „Excel“.

Kaip apskaičiuoti slenkančius vidurkius programoje „Excel“.

Išsamus vadovas, kaip apskaičiuoti slankiuosius vidurkius „Excel“ programoje, skirtas duomenų analizei ir orų prognozėms.

Kaip nukopijuoti formules naudojant automatinį pildymą programoje „Excel 2016“.

Kaip nukopijuoti formules naudojant automatinį pildymą programoje „Excel 2016“.

Sužinokite, kaip efektyviai nukopijuoti formules Excel 2016 programoje naudojant automatinio pildymo funkciją, kad pagreitintumėte darbo eigą.

Kaip „Excel 2010“ langeliams taikyti užpildymo spalvas, raštus ir gradientus

Kaip „Excel 2010“ langeliams taikyti užpildymo spalvas, raštus ir gradientus

Galite pabrėžti pasirinktus langelius „Excel 2010“ darbalapyje pakeisdami užpildymo spalvą arba pritaikydami ląstelėms šabloną ar gradiento efektą.

Kaip paryškinti savaitgalio datas programoje „Excel“.

Kaip paryškinti savaitgalio datas programoje „Excel“.

Dirbdami su laiko kortelėmis ir planuodami programą „Excel“, dažnai pravartu lengvai nustatyti bet kokias datas, kurios patenka į savaitgalius. Šiame straipsnyje pateikiami žingsniai, kaip naudoti sąlyginį formatavimą.

Kaip sukurti diagramas „Office 365“.

Kaip sukurti diagramas „Office 365“.

Sužinokite, kaip sukurti diagramas „Word“, „Excel“ ir „PowerPoint“ programose „Office 365“. Daugiau informacijos rasite LuckyTemplates.com.

Kaip sukurti pasirinktinius „Excel“ suvestinės lentelės skaičiavimus

Kaip sukurti pasirinktinius „Excel“ suvestinės lentelės skaičiavimus

„Excel“ suvestinės lentelės leidžia kurti <strong>pasirinktinius skaičiavimus</strong>, įtraukiant daug pusiau standartinių skaičiavimų. Šiame straipsnyje pateiksiu detalius nurodymus, kaip efektyviai naudoti šią funkciją.

Kaip pakeisti rašybos tikrinimo ir gramatikos nustatymus programoje „Word 2016“.

Kaip pakeisti rašybos tikrinimo ir gramatikos nustatymus programoje „Word 2016“.

Nesvarbu, ar dievinate, ar nekenčiate Word gebėjimo išjuokti jūsų kalbos gebėjimus, jūs turite galutinį sprendimą. Yra daug nustatymų ir parinkčių, leidžiančių valdyti „Word“ rašybos ir gramatikos tikrinimo įrankius.