Talaan ng VBA Pivot | Mga Hakbang upang Lumikha ng Talahanayan ng Pivot sa VBA

Excel VBA Pivot Table

Mga Table ng Pivot ang puso ng paglalagom ng ulat ng isang malaking halaga ng data. Maaari din nating i-automate ang proseso ng paglikha ng isang pivot table sa pamamagitan ng VBA coding. Ang mga ito ay mahalagang bahagi ng anumang ulat o dashboard, sa excel madali itong lumikha ng mga talahanayan na may isang pindutan ngunit sa VBA kailangan naming magsulat ng ilang mga code upang i-automate ang aming talahanayan ng pivot, bago mag-excel ang 2007 at ang mga mas lumang bersyon nito sa VBA hindi namin kailangan. lumikha ng isang cache para sa mga talahanayan ng pivot ngunit sa excel 2010 at ang mga mas bagong mga bersyon ng cache ay kinakailangan.

Ang VBA ay maaaring makatipid ng tone-toneladang oras para sa amin sa aming lugar ng trabaho, kahit na ang pag-master nito ay hindi ganoon kadali ngunit nagkakahalaga ng paggastos ng oras upang malaman ito. Tumagal ako ng 6 na buwan upang maunawaan ang proseso ng paglikha ng mga talahanayan ng pivot sa pamamagitan ng VBA. Alam mo kung ano ang nagawa ng mga kababalaghan sa akin ng 6 na buwan na iyon dahil nagawa ko ang napakaraming mga pagkakamali habang sinusubukang likhain ang pivot table.

Ngunit ang totoong bagay ay natutunan ko mula sa aking mga pagkakamali at ngayon ay sinusulat ko ang artikulong ito upang ipakita sa iyo kung paano lumikha ng mga talahanayan ng pivot gamit ang code.

Sa isang pag-click lamang ng isang pindutan, makakalikha tayo ng mga ulat.

Mga Hakbang upang Lumikha ng Talahanayan ng Pivot sa VBA

Maaari mong i-download ang Template ng Talaan ng VBA Pivot dito - Template ng Talaan ng VBA Pivot

Upang lumikha ng isang pivot table mahalaga na magkaroon ng data. Para sa mga ito lumikha ako ng ilang datos ng dummy, maaari mong i-download ang workbook upang sundin sa akin na may parehong data.

Hakbang 1:Ang Talaan ng Pivot ay isang bagay upang sanggunian ang talahanayan ng pivot na ideklara ang variable bilang PivotTables.

Code:

 Sub PivotTable () Dim PTable Bilang PivotTable End Sub 

Hakbang 2:Bago kami lumikha ng isang pivot table muna kailangan naming lumikha ng isang pivot cache upang tukuyin ang pinagmulan ng data.

Sa regular na worksheet pivot table nang hindi nagugulo sa amin ay lilikha ng isang pivot cache sa background. Ngunit sa VBA kailangan nating lumikha.

Para sa mga ito tukuyin ang variable ng isang PivotCache.

Code:

 Dim PCache Bilang PivotCache

Hakbang 3:Upang matukoy ang hanay ng data ng pivot tukuyin ang variable bilang isang saklaw.

Code:

 Masamang Palawakin Bilang Saklaw

Hakbang 4:Upang magpasok ng isang pivot table kailangan namin ng isang hiwalay na sheet upang magdagdag ng worksheet para sa pivot table na ideklara ang variable bilang isang worksheet.

Code:

 Dim PSheet Bilang Worksheet

Hakbang 5:Katulad din upang sanggunian ang data na naglalaman ng worksheet na ideklara ang isa pang variable bilang Worksheet.

Code:

 Dim DSheet Bilang Worksheet

Hakbang 6: Panghuli upang mahanap ang huling ginamit na hilera at haligi tukuyin ang dalawa pang mga variable bilang Mahaba.

Code:

 Dim LR Bilang Mahabang Dim LC As long 

Hakbang 7: Ngayon kailangan naming magsingit ng isang bagong sheet upang lumikha ng isang pivot table. Bago iyon, kung mayroong anumang pivot sheet na naroroon kailangan naming tanggalin iyon.

Hakbang 8: Itakda ngayon ang variable ng object na PSheet at DSheet sa Pivot Sheet at Data Sheet ayon sa pagkakabanggit.

Hakbang 9: Hanapin ang huling ginamit na hilera at huling ginamit na haligi sa datasheet.

Hakbang 10: Itakda ngayon ang saklaw ng pivot sa pamamagitan ng paggamit ng huling hilera at huling haligi.

Ito ay magtatakda ng saklaw ng data na perpekto. Awtomatiko nitong pipiliin ang saklaw ng data kahit na mayroong anumang pagdaragdag o pagtanggal ng data sa datasheet.

Hakbang 11: Bago kami lumikha ng isang pivot table kailangan naming lumikha ng isang pivot cache. Itakda ang variable ng pivot cache sa pamamagitan ng paggamit sa ibaba ng VBA code.

Hakbang 12: Lumikha ngayon ng isang blangkong talahanayan ng pivot.

Hakbang 13: Matapos ipasok ang talahanayan ng pivot kailangan muna nating ipasok ang patlang ng hilera. Kaya ipapasok ko ang patlang ng hilera bilang aking haligi ng Bansa.

Tandaan: I-download ang workbook upang maunawaan ang mga haligi ng data.

Hakbang 14: Ngayon isa pang item na aking isisingit sa patlang ng hilera bilang pangalawang posisyon ng item. Ipapasok ko ang Produkto bilang pangalawang item sa linya sa patlang ng hilera.

Hakbang 15: Matapos ipasok ang mga haligi sa patlang ng hilera kailangan naming maglagay ng mga halaga sa patlang ng haligi. Ipapasok ko ang "Segment" sa patlang ng haligi.

Hakbang 16: Ngayon kailangan naming magsingit ng mga numero sa patlang ng data. Kaya ipasok ang "Sales" sa patlang ng data.

Hakbang 17: Tapos na kami sa bahagi ng buod ng talahanayan ng pivot, ngayon kailangan naming i-format ang talahanayan. Upang mai-format ang talahanayan ng pivot gamitin ang code sa ibaba.

Tandaan: Upang mas maraming magkakaibang mga estilo ng talahanayan ang itatala ang mga ito ng macro at makuha ang mga istilo ng talahanayan.

Upang maipakita ang mga hilera na naihain na mga item sa tabular form idagdag ang code sa ibaba sa ibaba.

Ok, tapos na tayo kung tatakbo namin ang code na ito gamit ang F5 key o manu-mano noon, dapat nating makuha ang pivot table na tulad nito.

Tulad nito gamit ang VBA coding, maaari nating i-automate ang proseso ng paglikha ng isang pivot table.

Para sa iyong sanggunian, ibinigay ko ang code sa ibaba.

 Sub PivotTable () Dim PTable Bilang PivotTable Dim PCache Bilang PivotCache Dim PRange As Range Dim PSheet As Worksheet Dim DSheet As Worksheet Dim LR As Long Dim LC As Long On Error Resume Next Application.DisplayAlerts = False Application.ScreenUpdating = False Worksheets ("Pivot Sheet "). Tanggalin 'Tatanggalin nito ang mga worksheet na worksheet na talahanayan ng pivot.Add After: = ActiveSheet' Magdaragdag ito ng bagong worksheet na ActiveSheet.Name =" Pivot Sheet "'Papalitan nitong pangalan ang worksheet bilang" Pivot Sheet "Sa Error GoTo 0 Itakda ang PSheet = Mga Worksheet ("Pivot Sheet") Itakda ang DSheet = Mga Worksheet ("Data Sheet") 'Hanapin ang Huling ginamit na hilera at haligi sa sheet ng data LR = DSheet.Cells (Rows.Count, 1). End (xlUp) .Row LC = DSheet.Cells (1, Columns. Count). Tapusin (xlToLeft). Column 'Itakda ang hanay ng data ng talahanayan ng pivot Itakda ang PRange = DSheet. Mga Cell (1, 1). Baguhin ang laki (LR, LC)' Itakda ang pivot cahe Itakda ang PCache = ActiveWorkbook.PivotCache.Create (xlDatabase, SourceData: = PRange) 'Lumikha ng blangkong talahanayan ng pivot Itakda ang PTable = PCache.CreatePivotTable (TableDestination: = PSheet.Cells (1 , 1), TableName: = "Sales_Report") 'Ipasok ang bansa sa Hilera na Naka-file Sa PSheet.PivotTables ("Sales_Report"). PivotFields ("Country") .Orientation = xlRowField .Position = 1 End With' Insert Product to Row Filed & posisyon 2 Sa PSheet.PivotTables ("Sales_Report"). PivotFields ("Produkto") .Orientation = xlRowField .Position = 2 Tapusin Sa 'Ipasok ang Segment sa Filed na Naka-file at posisyon na 1 Sa PSheet.PivotTables ("Sales_Report"). Segment ") .Orientation = xlColumnField .Position = 1 End With 'Insert Sales column to the data field With PSheet.PivotTables (" Sales_Report "). PivotFields (" Sales ") .Orientation = xlDataField .Position = 1 End With' Format Pivot Talaan ng PSheet.PivotTables ("Sales_Report"). ShowTableStyleRowStripes = True PSheet.PivotTables ("Sales_Report"). TableStyle2 = "PivotStyleMedium14" 'Ipakita sa Tabular form na PSheet.PivotTables ("Sales_ReportL) Pag-update sa Screen = True End Sub