Kuten me kaikki tiedämme, aina kun teemme muutoksia pivot -taulukon lähdetietoihin, se ei heijastu välittömästi pivot -taulukkoon. Meidän on päivitettävä pivot -taulukot nähdäksemme muutokset. Ja jos lähetät päivitetyn tiedoston päivittämättä pivot -taulukoita, saatat tuntea hämmennystä.
Joten tässä artikkelissa opimme päivittämään pivot -taulukon automaattisesti VBA: n avulla. Tämä tapa on helpompi kuin kuvittelit.
Tämä on yksinkertainen syntaksi päivittää työkirjan pivot -taulukot automaattisesti.
'Koodi lähdetiedotearkin objektin yksityisessä alityöarkissa_Deactivate () sheetname_of_pivot_table.PivotTables ("pivot_table_name"). PivotCache.Refresh End Sub
Mitä Pivot -välimuistit ovat?
Jokainen pivot -taulukko tallentaa tiedot pivot -välimuistiin. Siksi pivot pystyy näyttämään aiemmat tiedot. Kun päivitämme pivot -taulukoita, se päivittää välimuistin uusilla lähdetiedoilla vastaamaan pivot -taulukon muutoksia.
Tarvitsemme siis vain makron pivot -taulukoiden välimuistin päivittämiseksi. Teemme tämän käyttämällä laskentataulukkotapahtumaa, jotta meidän ei tarvitse suorittaa makroa manuaalisesti.
Mistä koodata pivot -taulukoiden automaattista päivittämistä?
Jos lähdetietosi ja pivot -taulukot ovat eri arkeissa, VBA -koodin pitäisi mennä lähdetiedostoon.
Tässä käytämme Worksheet_SelectionChange -tapahtumaa. Tämä saa koodin toimimaan aina, kun vaihdamme lähdetietolomakkeesta toiseen. Selitän myöhemmin, miksi käytin tätä tapahtumaa.
Tässä minulla on lähdetiedot taulukossa 2 ja pivot -taulukot taulukossa 1.
Avaa VBE painamalla CTRL+F11. Project Explorerissa näet kolme objektia, Sheet1, Sheet2 ja Workbook.
Koska Sheet2 sisältää lähdetiedot, kaksoisnapsauta sheet2 -objektia.
Nyt näet kaksi pudotusvalikkoa koodialueen yläosassa. Valitse laskentataulukko ensimmäisestä avattavasta valikosta. Valitse toisesta avattavasta valikosta Poista käytöstä. Tämä lisää tyhjän alinimen Worksheet_Deactivate. Koodimme kirjoitetaan tähän osaan. Kaikki tähän alaosaan kirjoitetut rivit suoritetaan heti, kun käyttäjä siirtyy tältä taulukolta mille tahansa muulle taulukolle.
Arkilla 1 minulla on kaksi pivot -taulukkoa. Haluan päivittää vain yhden pivot -taulukon. Tätä varten minun on tiedettävä pivot -taulukon nimi. Jos haluat tietää minkä tahansa pivot -taulukon nimen, valitse mikä tahansa pivot -taulukon solu siirtymällä pivot -taulukon analysointi -välilehdelle. Vasemmalla puolella näet pivot -taulukon nimen. Voit myös muuttaa pivot -taulukon nimen täällä.
Nyt tiedämme pivot -taulukon nimen, voimme kirjoittaa yksinkertaisen rivin pivot -taulukon päivittämiseksi.
Yksityinen alityöarkki_Deactivate () Sheet1.PivotTables ("PivotTable1"). PivotCache.Refresh End Sub
Ja se on tehty.
Nyt kun vaihdat lähdetiedosta, tämä vba -koodi päivittää pivot -taulukon1. Kuten alla olevasta gifistä näet.
Kuinka päivittää kaikki työkirjan pivot -taulukot?
Yllä olevassa esimerkissä halusimme päivittää vain yhden tietyn pivot -taulukon. Mutta jos haluat päivittää kaikki työkirjan pivot -taulukot, sinun on vain tehtävä pieniä muutoksia koodiin.
Yksityinen alityöarkki_Deactivate () 'Sheet1.PivotTables ("PivotTable1"). PivotCache.Refresh For each PC In thisWorkbook.PivotCaches pc.Rreshresh Next pc End Sub
Tässä koodissa käytämme For -silmukkaa jokaisen työkirjan pivot -välimuistin läpi. ThisWorkbook -objekti sisältää kaikki pivot -välimuistit. Päästäksemme niihin käytämme ThisWorkbook.PivotCaches.
Miksi käyttää Worksheet_Deactivate -tapahtumaa?
Jos haluat päivittää pivot -taulukon heti, kun lähdetietoihin on tehty muutoksia, käytä Worksheet_Change -tapahtumaa. Mutta en suosittele sitä. Se saa työkirjasi suorittamaan koodin aina, kun teet muutoksia taulukkoon. Saatat joutua tekemään satoja muutoksia ennen kuin haluat nähdä tuloksen. Mutta Excel päivittää pivot -taulukon jokaisen muutoksen yhteydessä. Tämä johtaa käsittelyajan ja resurssien hukkaan. Joten jos sinulla on pivot -taulukoita ja tietoja eri arkeissa, on parempi käyttää laskentataulukon deaktivointitapahtumaa. Sen avulla voit viimeistellä työsi. Kun vaihdat pivot -taulukkolaskentaohjelmaan nähdäksesi muutokset, se muuttaa muutoksia.
Jos pivot -taulukot ja lähdetiedot ovat samassa taulukossa ja haluat, että pivot -taulukot päivittävät sen automaattisesti, voit käyttää Worksheet_Change -tapahtumaa.
Yksityinen alityöarkin_muutos (ByVal -kohde alueena) Sheet1.PivotTables ("PivotTable1"). PivotCache.Refresh End Sub
Kuinka päivittää kaikki työkirjat, kun lähdetietoja muutetaan?
Jos haluat päivittää työkirjan kaiken (kaaviot, pivot -taulukot, kaavat jne.), Voit käyttää ThisWorkbook.RefreshAll -komentoa.
Yksityinen alityökirjan_muutos (ByVal -kohdealueena) ThisWorkbook.RefreshAll End Sub
Huomaa, että tämä koodi ei muuta tietolähdettä. Joten jos lisäät tietoja lähdetietojen alle, tämä koodi ei sisällä kyseisiä tietoja automaattisesti. Voit käyttää Excel -taulukoita lähdetietojen tallentamiseen. Jos et halua käyttää taulukoita, voimme käyttää VBA: ta myös uusien tietojen sisällyttämiseen. Opimme sen seuraavassa opetusohjelmassa.
Joten kyllä, kaveri, näin voit päivittää pivot -taulukot automaattisesti Excelissä. Toivottavasti olin tarpeeksi selittävä ja tämä artikkeli palveli sinua hyvin. Jos sinulla on kysyttävää tästä aiheesta, voit kysyä minua alla olevasta kommenttiosasta.
Pivot -taulukon tietolähdealueen päivittäminen dynaamisesti Excelissä: Pivot -taulukoiden lähdetietoalueen muuttamiseksi dynaamisesti käytämme pivot -välimuisteja. Nämä muutamat rivit voivat päivittää dynaamisesti minkä tahansa pivot -taulukon muuttamalla lähdetietoaluetta. Käytä VBA: ssa pivot -taulukohteita alla olevan kuvan mukaisesti…
Suorita makro, jos taulukkoon tehdään muutoksia määritetyllä alueella: VBA -käytännöissäsi sinun on suoritettava makroja tietyn alueen tai solun muuttuessa. Siinä tapauksessa käytämme muutostapahtumaa suorittaaksemme makroja, kun kohdealueelle tehdään muutos.
Suorita makro, kun taulukkoon tehdään muutoksia | Joten makron suorittamiseen aina, kun taulukko päivittyy, käytämme VBA: n laskentataulukkotapahtumia.
Yksinkertaisin VBA -koodi nykyisen rivin ja sarakkeen korostamiseen | Käytä tätä pientä VBA -katkelmaa korostamaan taulukon nykyinen rivi ja sarake.
Laskentataulukon tapahtumat Excel VBA: ssa | Laskentataulukkotapahtuma on todella hyödyllinen, kun haluat makrojesi suoritettavan, kun taulukossa tapahtuu tietty tapahtuma.
Suosittuja artikkeleita:
50 Excel -pikanäppäintä tuottavuuden lisäämiseksi | Nopeuta tehtävääsi. Nämä 50 pikanäppäintä tekevät työskentelystäsi entistä nopeampaa Excelissä.
VLOOKUP -toiminto Excelissä | Tämä on yksi eniten käytetyistä ja suosituimmista Excel -toiminnoista, jota käytetään arvon etsimiseen eri alueilta ja arkeilta.
COUNTIF Excel 2016: ssa | Laske arvot olosuhteilla käyttämällä tätä hämmästyttävää toimintoa. Sinun ei tarvitse suodattaa tietojasi tietyn arvon laskemiseksi. Laskutoiminto on välttämätön kojelaudan valmistelemiseksi.
SUMIF -toiminnon käyttäminen Excelissä | Tämä on toinen kojelaudan olennainen toiminto. Tämä auttaa sinua laskemaan yhteen arvot tietyissä olosuhteissa.