Šajā rakstā mēs uzzināsim, kā automātiski atsvaidzināt rakurstabulas datus programmā Excel.
Scenārijs:
Kā mēs visi zinām, ikreiz, kad veicam izmaiņas rakurstabulas avota datos, tas uzreiz netiek atspoguļots rakurstabulā. Mums ir jāatsvaidzina rakurstabulas, lai redzētu izmaiņas, atverot Excel darbgrāmatu. Un, ja jūs nosūtāt atjauninātu failu, neatsvaidzinot rakurstabulas, jūs varat justies apmulsis. Tāpēc šeit uzziniet, kā atrast atsvaidzināšanas opciju, izmantojot rakurstabulu
Atjauniniet datus, atverot failu programmā Excel
Vispirms izveidojiet rakurstabulu un pēc tam ar peles labo pogu noklikšķiniet uz jebkuras rakurstabulas šūnas.
Atveriet rakurstabulas opcijas> Cilne Dati> Atzīmējiet izvēles rūtiņu Atjauniniet datus, atverot failu
Tas ļaus automātiski atjaunināt datus ikreiz, kad fails tiek atvērts.
Piemērs :
To visu var būt mulsinoši saprast. Sapratīsim, kā izmantot funkciju, izmantojot piemēru. Šeit mums ir daži dati, un mums vispirms ir jāizveido rakurstabula un pēc tam jāatrod iespējas, lai iespējotu automātiskās atjaunināšanas rakurstabulas.
Izveidojiet rakurstabulu un pēc tam ar peles labo pogu noklikšķiniet uz jebkuras rakurstabulas šūnas, kā parādīts zemāk.
Atlasiet rakurstabulas opcijas, un tiks atvērts dialoglodziņš PIvot tabulas opcijas.
Atlasiet cilni Dati un pēc tam atzīmējiet izvēles rūtiņu Atjaunot datus, atverot failu. To var izdarīt, neatverot un neaizverot failu, izmantojot VBA.
Izmantojot VBA
Tātad, šeit mēs uzzināsim, kā automātiski atsvaidzināt rakurstabulu, izmantojot VBA. Šis veids ir vieglāks, nekā jūs iedomājāties.
Šī ir vienkāršā sintakse, lai automātiski atsvaidzinātu rakurstabulas darbgrāmatā.
'Kods avota datu lapas objektā
Privāta apakšdarblapa_Deaktivizēt () lokšņu_tabulas_nosaukums.PivotTable ("pivot_table_name"). PivotCache. Atsvaidzināt Beigt apakš |
Kas ir Pivot kešatmiņas?
Katrā rakurstabulā dati tiek glabāti šarnīra kešatmiņā. Tāpēc pivot var parādīt iepriekšējos datus. Kad mēs atsvaidzinām rakurstabulas, tā atjaunina kešatmiņu ar jauniem avota datiem, lai atspoguļotu izmaiņas rakurstabulā.
Tāpēc mums ir nepieciešams tikai makro, lai atsvaidzinātu rakurstabulu kešatmiņu. Mēs to darīsim, izmantojot darblapas notikumu, lai makro nebūtu jāpalaiž manuāli.
Kur kodēt, lai automātiski atsvaidzinātu rakurstabulas?
Ja jūsu avota dati un rakurstabulas atrodas dažādās lapās, tad VBA kodam ir jābūt avota datu lapā.
Šeit mēs izmantosim notikumu Worksheet_SelectionChange. Tas liks kodam darboties ikreiz, kad pārslēgsimies no avota datu lapas uz citu lapu. Vēlāk es paskaidrošu, kāpēc es izmantoju šo notikumu.
Šeit man ir avota dati 2. lapā un rakurstabulas 1. lapā.
Atveriet VBE, izmantojot taustiņu CTRL+F11. Projekta izpētē varat redzēt trīs objektus: Sheet1, Sheet2 un Workbook.
Tā kā lapa 2 satur avota datus, veiciet dubultklikšķi uz lapas 2 objekta.
Tagad koda apgabala augšdaļā varat redzēt divus nolaižamos failus. Pirmajā nolaižamajā izvēlnē atlasiet darblapu. Otrajā nolaižamajā izvēlnē atlasiet Deaktivizēt. Tādējādi tiks ievietots tukšs apakšnosaukums Worksheet_Deactivate. Mūsu kods tiks ierakstīts šajā apakšnodaļā. Visas šajā apakšrakstā rakstītās rindas tiek izpildītas, tiklīdz lietotājs pārslēdzas no šīs lapas uz jebkuru citu lapu.
Lapā 1 man ir divas šarnīra tabulas. Es vēlos atsvaidzināt tikai vienu rakurstabulu. Lai to izdarītu, man jāzina rakurstabulas nosaukums. Lai uzzinātu jebkuras rakurstabulas nosaukumu, atlasiet jebkuru šūnu šajā rakurstabulā, dodieties uz rakurstabulas analīzes cilni. Kreisajā pusē redzēsit rakurstabulas nosaukumu. Šeit varat arī mainīt rakurstabulas nosaukumu.
Tagad mēs zinām rakurstabulas nosaukumu, mēs varam uzrakstīt vienkāršu rindu, lai atsvaidzinātu rakurstabulu.
Privāta apakšdarblapa_Deaktivizēt ()
Sheet1.PivotTables ("PivotTable1"). PivotCache.Refresh Beigt apakš |
Un tas tiek darīts.
Tagad, kad pārslēgsities no avota datiem, šis vba kods darbosies, lai atsvaidzinātu rakurstabulu1. Kā redzat zemāk esošajā gifā.
Kā atsvaidzināt visas darbgrāmatas rakurstabulas?
Iepriekš minētajā piemērā mēs vēlējāmies atsvaidzināt tikai vienu konkrētu rakurstabulu. Bet, ja vēlaties atsvaidzināt visas darbgrāmatas rakurstabulas, jums vienkārši jāveic nelielas izmaiņas kodā.
Privāta apakšdarblapa_Deaktivizēt ()
'Sheet1.PivotTables ("PivotTable1"). PivotCache.Refresh Katram datoram šajā darba grāmatā. PivotCaches gab. Atsvaidzināt Nākamais dators Beigt apakš |
Šajā kodā mēs izmantojam cilpu For, lai cilpotu cauri visām darbgrāmatas šarnīra kešatmiņām. ThisWorkbook objekts satur visas šarnīra kešatmiņas. Lai tiem piekļūtu, mēs izmantojam ThisWorkbook.PivotCaches.
Kāpēc izmantot notikumu Worksheet_Deactivate?
Ja vēlaties atsvaidzināt rakurstabulu, tiklīdz tiek veiktas jebkādas izmaiņas avota datos, izmantojiet notikumu Worksheet_Change. Bet es to neiesaku. Tas ļaus jūsu darbgrāmatai palaist kodu katru reizi, kad veicat izmaiņas lapā. Lai redzētu rezultātu, jums, iespējams, būs jāveic simtiem izmaiņu. Bet Excel atsvaidzinās rakurstabulu par katru izmaiņu. Tas novedīs pie apstrādes laika un resursu izšķiešanas. Tātad, ja jums ir rakurstabulas un dati dažādās lapās, labāk ir izmantot darblapas deaktivizēšanas notikumu. Tas ļauj pabeigt darbu. Kad esat pārslēdzies uz šarnīra tabulas lapām, lai redzētu izmaiņas, tas labo izmaiņas.
Ja vienā lapā ir rakurstabulas un avota dati un vēlaties, lai rakurstabulas to automātiski atsvaidzinātu, iespējams, vēlēsities izmantot notikumu Worksheet_Change Event.
Privāta apakšdarblapas maiņa (ByVal mērķis kā diapazons)
Sheet1.PivotTables ("PivotTable1"). PivotCache.Refresh Beigt apakš |
Kā atsvaidzināt visu darbgrāmatās, ja tiek mainīti avota dati?
Ja vēlaties atsvaidzināt visu darbgrāmatā (diagrammas, rakurstabulas, formulas utt.), Varat izmantot komandu ThisWorkbook.RefreshAll.
Privāta apakšdarblapas maiņa (ByVal mērķis kā diapazons)
ThisWorkbook.RefreshAll Beigt apakš |
Piezīme : Kods nemaina datu avotu. Tātad, ja jūs pievienojat datus zem avota datiem, šis kods šos datus automātiski neietvers. Avota datu glabāšanai varat izmantot Excel tabulas. Ja nevēlaties izmantot tabulas, mēs varam izmantot VBA arī jaunu datu iekļaušanai. Mēs to uzzināsim nākamajā apmācībā.
Ceru, ka šis raksts par to, kā automātiski atsvaidzināt rakurstabulas datus programmā Excel, ir paskaidrojošs. Vairāk rakstu par vērtību un saistīto Excel formulu aprēķināšanu meklējiet šeit. Ja jums patika mūsu emuāri, kopīgojiet to ar saviem draugiem Facebook. Un arī jūs varat sekot mums Twitter un Facebook. Mēs labprāt uzklausītu jūsu viedokli, dariet mums zināmu, kā mēs varam uzlabot, papildināt vai ieviest jauninājumus mūsu darbā un uzlabot to jūsu labā. Rakstiet mums e -pasta vietnē.
Kā dinamiski atjaunināt rakurstabulas datu avota diapazonu programmā Excel : Lai dinamiski mainītu rakurstabulu avota datu diapazonu, mēs izmantojam šarnīra kešatmiņas. Šīs dažas rindiņas var dinamiski atjaunināt jebkuru rakurstabulu, mainot avota datu diapazonu. VBA izmantojiet rakurstabulu objektus, kā parādīts zemāk …
Palaidiet makro, ja lapā tiek veiktas izmaiņas noteiktā diapazonā : VBA praksē jums būtu jāpalaiž makro, kad mainās noteikts diapazons vai šūna. Tādā gadījumā, lai palaistu makro, kad tiek veiktas izmaiņas mērķa diapazonā, mēs izmantojam izmaiņu notikumu.
Palaist makro, kad lapā tiek veiktas izmaiņas : Tātad, lai palaistu makro, kad lapa tiek atjaunināta, mēs izmantojam VBA darblapas notikumus.
Vienkāršākais VBA kods, lai izceltu pašreizējo rindu un kolonnu, izmantojot : Izmantojiet šo mazo VBA fragmentu, lai iezīmētu lapas pašreizējo rindu un kolonnu.
Darblapas notikumi programmā Excel VBA : Darblapas notikums ir patiešām noderīgs, ja vēlaties, lai makro darbotos, kad lapā notiek noteikts notikums.
Populāri raksti:
50 Excel saīsnes, lai palielinātu produktivitāti : Ātrāk izpildiet savus uzdevumus programmā Excel. Šie īsceļi palīdzēs jums palielināt darba efektivitāti programmā Excel.
Kā lietot funkciju VLOOKUP programmā Excel : Šī ir viena no visbiežāk izmantotajām un populārākajām Excel funkcijām, kas tiek izmantota, lai meklētu vērtību no dažādiem diapazoniem un lapām.
Kā lietot funkciju IF programmā Excel : IF priekšraksts programmā Excel pārbauda nosacījumu un atgriež noteiktu vērtību, ja nosacījums ir TRUE, vai atgriež citu noteiktu vērtību, ja FALSE.
Kā lietot funkciju SUMIF programmā Excel : Šī ir vēl viena būtiska informācijas paneļa funkcija. Tas palīdz apkopot vērtības noteiktos apstākļos.
Kā lietot funkciju COUNTIF programmā Excel : Saskaitiet vērtības ar nosacījumiem, izmantojot šo apbrīnojamo funkciju. Jums nav jāfiltrē dati, lai saskaitītu noteiktas vērtības. Skaitītāja funkcija ir būtiska, lai sagatavotu informācijas paneli.