Kaip automatiškai atnaujinti "Excel" suvestinę lentelę (2 metodai)

  • Pasidalinti
Hugh West

Šiame straipsnyje parodyta, kaip automatiškai atnaujinti sukamąją lentelę programoje "Excel naudodami du skirtingus metodus. Automatinis sukamosios lentelės atnaujinimas pasikeitus duomenų šaltiniui yra galinga "Excel" teikiama funkcija. Tačiau tai nėra integruota funkcija. Vadovaukimės vadovu, kaip automatizuoti "Excel" skaičiavimus.

Atsisiųsti praktikos sąsiuvinį

Atsisiųskite šį pratybų sąsiuvinį, kad galėtumėte atlikti pratimus skaitydami šį straipsnį.

Atnaujinti suvestinę lentelę Pivot Table.xlsm

2 metodai, kaip automatiškai atnaujinti "Excel" suvestinę lentelę

Iliustracija kaip atnaujinti "Excel" sukamąją lentelę , sukūrėme dvi sukimosi lentelės duomenų rinkiniui. Duomenų rinkinyje pateikiamas sąrašas pardavimo duomenys su visa reikiama informacija, pavyzdžiui, data, regionu, miesto pavadinimu, produkto pavadinimu, produkto kategorija, vieneto kaina, kiekiu ir bendra kaina.

Yra 2 sukimosi lentelės naudojantis šiuo duomenų rinkiniu - vienas iš jų skirtas parodyti, kaip bendras pardavimas skiriasi dėl skirtingi miestai (ekrano nuotrauka 1 ) ir kitas stalas kuriame rodomi visi pardavimai už skirtingos kategorijos produktų (ekrano nuotrauka 2 ).

1 ekrano nuotrauka:

2 ekrano nuotrauka:

1. Automatinis Pivot lentelės atnaujinimas atidarius sąsiuvinį

Šis metodas atnaujinti sukamąją lentelę kiekvieną kartą, kai darbo knyga yra . atidaryta , o ne kiekvieną kartą, kai duomenų rinkinyje atliekamas pakeitimas. dalinis automatizavimas sukamoji lentelė . Atlikime veiksmus, kad įjungtumėte automatiškai atnaujinamos sukimosi lentelės funkciją:

Žingsniai:

  • Dešiniuoju pelės klavišu spustelėkite bet kuris ląstelė sukamosios lentelės, kad atidarytumėte kontekstinis meniu.
  • Pasirinkite PivotTable parinktys iš kontekstinio meniu.

  • PivotTable parinktys langą, eikite į Duomenys skirtukas ir patikrinkite . Atnaujinti duomenis atidarant failą parinktis .

  • Galiausiai paspauskite GERAI uždaryti langą.

Skaityti daugiau: Kaip atnaujinti visas "Excel" išvestines lenteles

Panašūs skaitiniai

  • Neatsinaujinanti suvestinė lentelė (5 problemos & amp; sprendimai)
  • Kaip atnaujinti "Excel" diagramą (2 veiksmingi būdai)

  • Pivot lentelės redagavimas programoje "Excel" (5 metodai)
  • 2. Automatinis "Excel" suvestinės lentelės atnaujinimas naudojant VBA

    Naudojant paprastą VBA kodą galime automatiškai atnaujinti mūsų sukamąją lentelę, kai keisti bet kuris pirminiai duomenys . Svarbiausia, kad tai vyksta iš karto skirtingai nuo ankstesnio metodo, kai norėdami pamatyti atnaujinimus turime uždaryti ir vėl atidaryti failą. Kad tai įvyktų, vadovaukimės šiuo vadovu!

    Žingsniai:

    • "Excel" juostelė eikite į Kūrėjo skirtukas ir spustelėkite "Visual Basic atverti skirtuką "Visual Basic" redaktorius.

    • Į "Visual Basic" redaktorius eikite į VBA projekto naršyklė kuriame išvardyti visi darbo lapai. Pasirinkite darbalapis kuriame yra pirminiai duomenys ir dukart spustelėkite . Tai atvers naują modulis parašyti reikiamą kodą.

    • Šiame žingsnyje norime pridėti įvykio makroaplinka . Šiuo tikslu spustelėkite objekto išskleidimas, apie kairėje modulio ir pasirinkite

    • Atlikus šį veiksmą būtų pridėta Įvykis Worksheet_SelectionChange .

    • Norėdami pridėti įvykį prie modulio, spustelėkite Procedūros išskleidžiamoji eilutė ir pasirinkite Keisti

    • Dabar matome naują įvykio makroaplinka pridedamas prie modulio, pavadinto Darbalapis_Change . Savo kodą rašysime šio viduje. Taigi, ištrinti . Darbalapis_SelectionChange

    • Galiausiai pridėkite paprastą VBA kodą, esantį pasikeitimo įvykio viduje.
     Private Sub Worksheet_Change(ByVal Target As Range) ThisWorkbook.RefreshAll End Sub 

    Šis VBA kodas bus paleisti bet kada, kai pakeisti langelio duomenis į šaltinio failas. Visi sukamosios lentelės susiję su šaltinis bus atnaujinta atitinkamai ir akimirksniu .

    Skaityti daugiau : Kaip atnaujinti visas Pivot lenteles naudojant VBA (4 būdai)

    VBA kodas, skirtas automatiškai atnaujinti vieną suvestinę lentelę

    Jei nenorime automatiškai atnaujinti visas sukimo lenteles sąsiuvinyje, o tik konkretus , galime naudoti šį kodą. Šis kodas atnaujins tik lape esančią sukamąją lentelę pivot-category kai pakeisime duomenų šaltinis.

     Private Sub Worksheet_Change(ByVal Target As Range) Worksheets("pivot-category").PivotTables("PivotTable1").PivotCache.Refresh End Sub 

    Šiame kode, pivot-category yra lapo, kuriame yra PivotTable. Galime lengvai patikrinti darbalapio ir sukamosios lentelės pavadinimą.

    Pirmiau pateiktoje ekrano nuotraukoje matome lapo pavadinimas į apatinis skirtukas excel darbalapis .

    Jei nenorime automatiškai atnaujinti visas sukimo lenteles sąsiuvinyje, o tik konkretus, galime naudoti toliau pateiktą kodą. Šis kodas atnaujins tik lapo sukimosi lentelės sukimosi kategoriją, kai pakeisime duomenų šaltinį.

    Skaityti daugiau: VBA "Excel" išvestinės lentelės atnaujinimas programoje "Excel

    Dalykai, kuriuos reikia prisiminti

    Naudojant VBA kodas taikant 2 metodą automatizuoja mūsų sukimosi lenteles, bet tai praranda . istorijos atšaukimas . Atlikę pakeitimą, negalime grįžti į ankstesnį etapą. Tai yra makrokomandos, skirtos automatiškai atnaujinti sukimosi lenteles, trūkumas.

    Išvada

    Dabar jau žinome, kaip automatizuoti sukamąsias lenteles "Excel" programoje. Tikimės, kad tai paskatins jus drąsiau naudotis šia funkcija. Jei turite klausimų ar pasiūlymų, nepamirškite jų pateikti toliau esančiame komentarų laukelyje.

    Hugh Westas yra labai patyręs Excel treneris ir analitikas, turintis daugiau nei 10 metų patirtį šioje srityje. Jis yra įgijęs apskaitos ir finansų bakalauro bei verslo administravimo magistro laipsnius. Hugh turi aistrą mokymui ir sukūrė unikalų mokymo metodą, kurį lengva sekti ir suprasti. Jo ekspertinės žinios apie „Excel“ padėjo tūkstančiams studentų ir specialistų visame pasaulyje tobulinti savo įgūdžius ir tobulėti savo karjeroje. Savo tinklaraštyje Hugh dalijasi savo žiniomis su pasauliu, siūlydamas nemokamus „Excel“ vadovėlius ir internetinius mokymus, kad padėtų asmenims ir įmonėms išnaudoti visą savo potencialą.