Suskirstyti darbaknygę pagal darbalapius - „Excel“ patarimai

Turite darbaknygę su daugybe darbalapių. Kiekvieną darbalapį norite nusiųsti kitam asmeniui. Šiandien makrokomanda, kad tuos duomenis išskaidytų.

Žiūrėti video

  • „Joe + Others“ ieško būdo išsaugoti kiekvieną darbalapį skirtingame faile
  • Naudinga naudojant „Power Query“ arba naudojant „Show Report Filter Pages“

Vaizdo įrašo nuorašas

Sužinokite „Excel“ iš „Podcast“, 2107 serija - padalykite kiekvieną darbalapį į naują darbaknygę

Ei, sveiki sugrįžę. Aš ir netcast. Aš esu Billas Jelenas.

Jau seniai žinau, kad man reikia tai padaryti, bet du naujausi tinklalaidės tikrai parsivežė, parsivežė namo.

Visai neseniai 2106 epizode, kuriame kūrėme PDF failą iš visų pjaustyklių derinių. Vėlai toje epizodoje aš parodžiau alternatyvų metodą, kai mes kuriame daugybę suvestinių ataskaitų, tačiau jas visas įtraukiame į tą pačią darbaknygę, o aš gavau el. Laišką iš Joe iš Kalifornijos, kuriame gerai parašyta: žiūrėk, man reikia nusiųsti kiekvieną darbalapį kitam klientui ir tas pats dalykas, mano tiesioginiuose „Power Excel“ seminaruose, kuriuose aš parodysiu tą triuką, žmonės sako: na ne, mes nenorime, kad visa tai būtų toje pačioje darbaknygėje, mes norime to atskirai ir tada tikriausiai dar svarbiau nei tai, vėl grįžta 2077 epizodas, kuriame kalbėjau apie tai, kaip „Power Query“ dabar gali sujungti visus aplanko „Excel“ failus, tiesa? Ir tai stebuklinga. Tai puikiai veikia. Jei turėjote 400 „Excel“ failų, kurių kiekvienas turėjo vieną darbalapį, jis sugriebs visus tuos duomenis iš visų tų darbalapių ir įdės į vieną tinklelį.Kas yra nuostabu, bet jei turėtume beveik tą pačią problemą. Viena darbaknygė su 400 darbalapių? Tai negali padaryti, tiesa. Kol kas tai negali susitvarkyti. Teisingai, todėl dabar, 2017 m. Liepos 1 d., Ji negali to išspręsti. Galbūt per šešis mėnesius tai gali tai išspręsti, tačiau dabar tai turi būti vieno lapo darbo knygos.

Taigi mums reikia būdo, kad galėtume suskaidyti dalykus į atskirus failus. Gerai, leiskime tai tiesiog nustatyti. Mes turime darbaknygę, kurią padariau 2106 m., Kur turime duomenis ir pradinę „Pivot“ lentelę, o mes einame į „Analizuoti“, „Parinktys“, „Rodyti ataskaitos filtro puslapius“ ir rodyti rakto puslapius. Tai sukuria daugybę įvairių darbalapių man ir Noriu paimti tuos darbalapius ir sukurti kiekvieną iš jų atskirą failą, tačiau, nors ir turime, yra keletas dalykų, tokių kaip „Sheet2“ ir „Data“, kurių nenoriu padalinti.

Gerai? Ir, žinoma, kiekvienam asmeniui tas dalykas, tas darbalapių sąrašas, kurio mes nenorime skirstyti, bus kitoks, bet aš spėsiu, kad beveik visi turi keletą darbalapių, kurių nemoka “. nenoriu skilti.

Gerai, taigi čia yra programa, kurią galėsite atsisiųsti. Darbalapių skirstytuvas ir čia aš turiu skyrių B stulpelyje ir tai tikrai vienintelis dalykas B stulpelyje, kuriame galite išvardyti tuos darbalapius, kurių nenorite padalinti. Tai gali būti daugiau nei du. Čia galite užpildyti tiek, kiek norite. Galite įterpti naujų eilučių ir mano pigų būdą, aš nenorėjau, kad turėčiau juos peržvelgti makrokomandoje, iki šiol už jūsų rodinio ribų, turiu vietą, kurioje makrokomanda gali parašyti dabartinį darbalapio pavadinimą ir tada paprastas mažas VLOOKUP. Joje sakoma: eikite ieškoti šio darbalapio, prie kurio dabar dirbame, pažiūrėkite, ar jis baigtas B stulpelyje ir, jei taip, žinosime, kad tai yra tas, kurio nenorime eksportuoti.

Gerai ir vėl, kad tai būtų kuo bendresnė, aš čia turiu keletą pavadintų diapazonų: „Mano kelias“, „Priešdėlis“, „Priesaga“, „Mano tipas“ ir „Įklijuoti“. Gerai, kad suprastum, kur nori ši medžiaga. c: ataskaitos . Noriu, kad kiekvienas failas turėtų lapo pavadinimą, bet prieš lapo pavadinimą įdėsiu prefiksą „WB“, „File Suffix“ ir nieko, tada turėsite pasirinkti čia: PDF arba XLSX.

Taigi pradėsime nuo „XLSX“, prieš išsaugodami vėliau pakalbėsime apie šias pastos vertes. Gerai ir dabar tai yra pirmoji 2017 m. Liepos 1 d. Versija. Jei tai patobulinsime, tiesiog pakeisiu jį tinklalapyje, o tinklalapį rasite apačioje „YouTube“ aprašymuose. Gerai, todėl štai kaip tai veiks. Tai yra XLSM failas. Taigi turite įsitikinti, kad makrokomandas leidžiama naudoti. alt = "" T, M, S, norėdami užtikrinti saugumą, turite būti bent šiame ar žemesniame lygyje. Teisingai, jei esate viršuje, turite pasikeisti, ji uždaro darbaknygę, vėl atidaro. Kai atidarysite darbaknygę, sakysime: hey, ar esate pasirengę priimti makrokomandas čia ir tai nėra didelis makrokomandas: šešiasdešimt aštuonios kodo eilutės ir daugybė dalykų yra tik tai, kaip pašalinti reikšmes iš meniu Lapas,kokie dabar yra kintamieji.

Tačiau čia svarbu tai, kad jis veiks „ActiveWorkbook“. Taigi pereisite prie darbaknygės, kurioje yra duomenys, ir tada paspauskite CTRL SHIFT S, kad ją paleistumėte, ir ji aptiks „ActiveWorkbook“, ir tai bus ta, kurią ji išskirs. Jis sugriebia („MyPath“) ir tiesiog todėl, kad aš visada pamirštu įdėti tą atgalinį brūkšnį, jei paskutinis veikėjas nėra atbulinis brūkšnys, aš pridėsiu atgalinį brūkšnį ir tada čia yra tikrasis darbas.

Kiekvieno darbalapio originalą, aktyvųjį WBO. Darbo lapus, mes išbandysime, ar tai yra ten esantis langelis ir B. stulpelis. Jei taip, tada eksportuosime šį lapą ir aš patinka ši kodo eilutė. WS.copy sako, kad kai paimsiu šią darbaknygę, šį darbalapį iš šios didelės darbaknygės, jūs žinote 20 ar 400 darbalapių ir mes eisime į WS.copy, kuris padaro jos kopiją ir perkelia į naują darbaknygę. ir mes žinome, mes žinome, kad ta nauja darbaknygė dabar taps aktyvia makrokomandų darbaknygė ir, žinoma, toje darbaknygėje yra tik vienas lapas ir tas lapas yra aktyvus lapas.

Taigi teisingai, čia aš galiu išsiaiškinti Darbaknygės pavadinimą. Nustatykite jį, Taikyti šiam objekto kintamajam, Darbaknygei naujai, Naujai darbalapiui, o vėliau, kai turėsiu uždaryti, atlikęs darbą galiu atlikti WBN.close. Mes išsiaiškiname naują failo pavadinimą naudodami visus kintamuosius. Nužudyk tą failą, jei jis jau yra, ir tada, jei tai yra „Excel“ failas, mes išsaugome kaip PDF failą.

Beje, šis PDF kodas veikia tik „Windows“ sistemoje, jei naudojatės „Mac“, atsiprašau, turėsite eiti kur nors kitur, kad išsiaiškintumėte lygiavertį „Mac“ kodą. Aš neturiu „Mac“. Žinau, kad yra būdas išsaugoti PDF failą „Mac“. Žinau, kad kodas yra kitoks. Turėsite išsiaiškinti tą vieną arba grįžti į tikrąjį „Windows“ „Windows“ ir tada mes baigsime, mes uždarysime.

Gerai, taigi tai tik paprastas mažas makrokomandas, pereikite prie mūsų duomenų darbaknygės čia, kurioje yra visi darbalapiai. Čia yra 20 skirtingų darbalapių, be to, du nenoriu daryti, tada CTRL SHIFT S patinka ir mes žiūrėsime, kaip jis mirksi, kai jis sukuria kiekvieną. Mes esame: sukurta 21 byla.

Pažvelkime į „Windows Explorer“ ir čia yra mano OS (C :) ataskaitos, sukurtos kiekvienam darbalapiui, pavadintoje originalioje darbaknygėje, sukūrė naują versiją su WB priekyje. Gerai, Džo, kai Džo man atsiuntė šį raštelį, jis pasakė, kad jis siųs šiuos duomenis klientams, ir aš iš pradžių panikavau, nes sakiau: palauk sekundę Džo, mums kils problema, nes tu ketini siųsti Garį, jo duomenis, tiesa? Bet tai yra, ai, jūs žinote tiesioginį, tiesioginį duomenų rinkinį, tai yra tiesioginė „Pivot“ lentelė. Visus čia esančius dalykus, galbūt, galėsite gauti visą informaciją kitiems tokiems klientams, tiesa? Berniuk, tu nenori siųsti klientui A visų kitų klientų informacijos. Tai gali būti vargas ir, iš tikrųjų, kai perskaičiau laidos užrašą, jis buvo protingesnis už mane, nes sakė:Noriu juos sukurti kaip PDF failus. Man buvo, gerai, gerai, taip, taip, mes neturime jaudintis dėl PDF failų, tai puiku, bet ką aš čia pridėjau prie makrokomandos, buvo galimybė pasakyti „Įklijuoti vertes prieš išsaugant“? TIESA.

Taigi jūs nustatėte, kad lygi TRUE, ir tai čia sukvies šį mažą kodą, kur mes sakome: „If PasteV“, tada „UsedRange.Copy“, tada „UsedRange.PopySpecial“ (xlPasteValues), „UsedRange“, o ne kopijuojate ir įklijuojate visus 17 milijardų langelių , tai apribos jį iki „UsedRange“.

Gerai, todėl pereikime atgal, perjunkite tą darbalapį, kuriame yra duomenys, „CTRL SHIFT S“ padalijimui ir tada šią naują versiją ataskaitų kataloge, pamatysite, kad ji atsikratė „Pivot“ lentelės ir paliko tik duomenis. Taigi tokiu būdu jie negali gauti visų duomenų.

Gerai, mes išbandysime kitą funkciją. Pabandysime, jei pereisime iš „Excel“ į PDF, pakeisime priešdėlį į „PDFFileOf“, kad ir ką ten norėtume. Aš net neišbandysiu priesagos, kažko. Gerai, tada pereikite prie duomenų, „CTRL SHIFT S. Alrighty“, taigi gauname tuos pačius failus „PDFFileOf“ iš darbalapio pavadinimo, kažkas iš PDF, ir mes turėtume turėti tokius gražius mažus PDF failus.

Gerai, kad turėtumėte tai ..com darbalapio skirstytuvas. Tikimės, kad pakankamai bendro pobūdžio viskas, ko jums reikia. Atsisiųskite dar kartą iš ten pateiktos nuorodos „YouTube“ komentaruose. Norėdami sužinoti daugiau apie VBA, peržiūrėkite šią knygą „Excel 2016 VBA and Macros“, kurią aš ir Tracy? 08: 50.640. Norėdami sužinoti daugiau apie knygą, spustelėkite viršutiniame dešiniajame kampe, kad aš.

Joe iš Kalifornijos ir daugelis kitų paprašė, kaip išsaugoti kiekvieną darbalapį kitame faile, kaip PDF failą Joe atveju arba „Excel“ failą, jei ketinate naudoti „Power Query“ failams sujungti. Taigi aš ten sukūriau gražų mažą „Generic Freeware Utility“. Galite atsisiųsti ir padaryti jį.

Noriu padėkoti Joe už tai, kad iškėlė šį klausimą, ir noriu padėkoti, kad užsukote. Pamatysime kitą kartą kitai internetinei transliacijai iš.

Atsisiųsti failą

Atsisiųskite failo pavyzdį čia: Podcast2107.xlsm

Įdomios straipsniai...