Pam bi rada razvrstila zavihke svojih delovnih listov po abecedi. To ni ukaz v Excelu, vendar ga lahko s kratkim makrom dodate v orodno vrstico za hitri dostop.
Oglejte si video
- Pam želi zavihke delovnega lista razvrstiti po abecedi
- Uporaba makra v osebnem delovnem zvezku makra
- Alt + T + M + S in spremenite varnost makra, da omogočite makre
- Makro Hello World zapišite v osebni delovni zvezek makrov
- Vnesite novo kodo v Delovni zvezek Personal Macro
- Dodelite to kodo gumbu QAT
Video zapis
Naučite se Excel iz podcasta, epizoda 2084: Razvrstite zavihke delovnih listov po abecedi
Hej, dobrodošli nazaj v oddaji, jaz sem Bill Jelen. Današnje vprašanje Pam: Ali obstaja način za abecedo zavihkov delovnega lista? No, vgrajenega načina za to ni, lahko pa z makro. In zdaj je to makro, ki bi res moral biti v osebnem delovnem zvezku makroov, prav? Torej, če še nikoli niste delali makrov, bomo naredili Alt + T za Toma in za Mary, S za Sama. In se prepričajte, da se z Onemogoči vse makre brez obvestila premaknete na Onemogoči makre z obvestilom.
Nato pritisnite Alt + F8 in si oglejte, ali imate kakšen makro, izberite Makri v: Vsi odprti delovni zvezki. Če nimate ničesar, kar bi se začelo kot PERSONAL.XLSB, morate izvesti te neobvezne korake. Če že imate kaj s PERSONAL.XLSB, počakajte še sekundo, v redu?
Torej, šli bomo na zavihek Pogled in posneli bomo nov makro. Imenoval se bo HelloWorld. Brez prostora, brez prostora. Makro bomo shranili v Osebni delovni zvezek makrov in kliknite V redu. In preprosto vtipkajte nekam, Hello World, tako, nato pa pridite sem zraven Pripravljeno in kliknite Stop. V redu, zdaj vas bo to prisililo k osebnemu makro delovnemu zvezku. V redu, če še nikoli niste uporabljali makrov, jih morda ne boste imeli.
Na tej točki bomo pritisnili Alt + F11 in če še nikoli niste uporabljali makrov, boste tukaj dobili ta sivi zaslon. Odpravili se bomo na View, Project Explorer in poiskali bomo novo PERSONAL.XLSB. Če tam že imate modul, ki ga boste seveda, seveda ja, odprli in dvokliknite Modul 1. Zdaj imam že nekaj makrov v svojem osebnem delovnem zvezku za makro, vendar bom prišel sem, da v zadnji vrstici vstavite nekaj presledkov.
V redu, potem bi vtipkali to kodo, ki sem jo prilepil. Pogovorili se bomo o tem makroju, ko ga zaženem. Torej, poganjal jo bom po eno vrstico s pritiskom na tipko F8. In ene stvari, ki sem se jih naučil tukaj, je bilo po končanem razvrščanju nekoliko zmedeno, da sem končal na drugem listu, zato se spomnim, na katerem listu smo, zato ga lahko kasneje izberem tik preden je makro Končano.
V redu, tu smo. Vrnimo se k Excelu in videli boste, da se prvi list tam imenuje Naslov. Trenutno smo na listu z imenom Vprašanje. Pred naslovom želim dodati nov list, zato naredimo Worksheets.Add in nato želim to preimenovati. Trenutno je v Sheet1 kot TempSortSheet. Bodite previdni, to bi moralo biti ime, ki ga ne bi slučajno uporabljali. Kot da ne kličete tega izkaza dohodka, v redu? Samo uporabite nekaj zelo naključnega, tako da bomo, ko bomo - naleteli na napako, če že imate list z imenom TempSortSheet. In potem sem ugotovil, da sem uporabljal ta Worksheet.Count znova in znova in znova, zato ga bom dal le v spremenljivko, ki je lažje reči WSC kot Worksheets.Count kasneje. Tako imamo 150 delovnih listov in imamo seznam teh delovnih listov.
V redu, torej ste prvič skozi zanko, kjer grem od 1 do 250. Prvič skozi zanko do našega povsem novega lista, ki smo ga dodali, TempSortSheet, v stolpec 1 vrstice 1, gremo da na prvi delovni list postavite vrednost, ki je =. V redu, in kaj bi to moralo biti, dobro, ja, TempSortSheet tam. Ampak to bom pustil še nekajkrat. Pritisnil bom F8 in videli boste, da dobimo vse zavihke listov v vrstnem redu, kot se pojavljajo v delovnem zvezku, in predvidevam, da začnem dobivati tiste zavihke s številkami računov, v redu. In pustil bom, da teče, ne želim, da bi moral pritisniti F8 300-krat. Torej, kliknil bom tukaj in odšel na Debug, Run To Cursor, ki je Ctrl + F8, ki bo to dokončal. In glej, imamo seznam vseh zavihkov 150 listov.To je super.
In zdaj tukaj izkoristimo moč Excela. V spletu je veliko objav, tudi na oglasni deski, kjer dejansko poskušajo razvrstiti. Za premikanje listov napišejo lastno razvrščanje in tu bomo izkoristili Excel, ker ima Excel razvrščanje in uporabljam kodo iz Excela 2003. Ta koda mi je všeč, lažje si jo zapomnim. Začel bom v A1, prilagodi velikost na 150 celic, kjer to razvrstim. Ključ bo A1. No, to je edino, kar bi lahko bilo. Naročilo bo naraščajoče in obvezno navedite, da obstaja Glava, kajne? Ne želimo, da naš TempSortSheet razvršča podatke. V redu, prav tam. BAM! To opravi razvrščanje in nam ni treba pisati okoli kode za razvrščanje mehurčkov. In potem gremo iz vrstice 2, ki je A120,list za premikanje je A120. Zakaj ""? Ahh, če imate ime lista, kot smo ga imeli prej ta teden, kot list z imenom 123, ki bi zmedel Excel. In potem, kam ga bomo preselili? Premaknili se bomo na ne vrstico 2, ampak po prvem listu. Torej MoveAfter postane 1. Torej, vzeli bomo naš list z imenom A120 in ga premaknili za prvim listom tako, F8, in tam je uspelo. Ponovno zaženite te tri vrstice. A124 pride na pravo mesto.vzeli bomo naš list z imenom A120 in ga premaknili za prvim listom tako, F8, in tam je uspelo. Ponovno zaženite te tri vrstice. A124 pride na pravo mesto.vzeli bomo naš list z imenom A120 in ga premaknili za prvim listom tako, F8, in tam je uspelo. Ponovno zaženite te tri vrstice. A124 pride na pravo mesto.
Na tej točki zdaj vemo, da deluje, lahko naredimo Ctrl + F8, ki izvede vse premike - tam se je ravno zgodilo 150 potez. In zdaj bom izbrisal izvirni list, ki je naš izbrisani TempSortSheet. Toda preden ga izbrišem, nočem, da kdo izvaja kodo, da bomo izbrisali list. Torej ga samo izbrišem in nato izberem izvirni list in prikažem sporočilo, da so delovni zvezki tako razvrščeni.
Torej, zdaj, ko imamo makro, vemo, da makro deluje in je v delovnem zvezku osebnega makra, nekaj stvari, ki jih želimo narediti: Alt + F11 se vrnite sem in se prepričajte, da ste v osebnem makro delovni zvezek, kliknite tam in kliknite Shrani. Če ga ne shranite zdaj, bo pozneje, ko zaprete Excel, utripa to sporočilo o "Ali želite shraniti spremembe v PERSONAL.XLSB?" in popolnoma boste pozabili in ne shranili sprememb, kajne? Zato vedno poskrbim, da shranim spremembe in nato Alt + Tab, kjer prilagodim orodno vrstico za hitri dostop, izberem med makri, najdem tistega, ki se imenuje SortSheets, in ga dodam v orodno vrstico za hitri dostop. Diagram poteka mi ni všeč, zato bomo iskali nekaj, na katerem piše od A do Ž, ali pa veste,s uporabite to in tam postavite majhen zavihek Razvrščanje takih listov, kliknite V redu, kliknite V redu.
V redu, zdaj je test. Vstavil bom nov delovni zvezek. Naredil bom nekaj kopij listov in jih postavil v nekako čudno zaporedje, Z in nato Y in nato M in nato B, tako. Kliknite Razvrsti liste in BAM! Tu so v pravem zaporedju. Kako kul je to.
Torej, Pam želi danes v epizodi razvrstiti zavihke delovnega lista po abecedi. Vau! Uporabili smo makro. Najprej spremenite varnost makra in zapišite makro Hello World v osebni delovni zvezek makra, nato vnesite kodo v delovni zvezek Personal Macro in jo dodelite gumbu orodne vrstice za hitri dostop.
Zahvaljujem se Pam za to vprašanje. Želim se vam zahvaliti, da ste se ustavili. Se vidimo naslednjič za še eno oddajo iz.
Prenesite datoteko
Prenesite vzorčno datoteko tukaj: Podcast2084.xlsm