Pada Materi sebelumnya kita sudah berhasil membuat sebuah Pivot Table Kosong.
Pada materi kali ini kita akan belajar bagaimana menambahkan Row Field dan Column Field dan juga Data Field kedalam Pivot Table atau mudahnya menampilkan data kedalam Pivot Table.
Sebuah Table Pivot tidak ada artinya jika tidak ada data yang ditampilkan.
Ada beberapa Field yang ada pada Pivot Table sama seperti saat akan membuat pivot dengan cara manual yaitu ada isian untuk Row, Column dan juga Value.
Untuk menambahkan Data ke Field Pivot kita bisa tambahkan dengan notasi
ObjectPivotTable.PivotFields("Nama Kolom").Orientation = Jenis Field
Untuk lebih jelaskan silahkan simak penjelasan dibawah ini
Untuk menambahkan data ke Row Field scriptnya bisa ditulis seperti dibawah ini
'Insert Row Fields
With ActiveSheet.PivotTables("PivotPenjualan").PivotFields("Barang")
.Orientation = xlRowField
.Position = 1
End With
Jika pada Materi sebelumnya kita sudah membuat variable untuk Pivot Table dengan nama variable Ptable, maka kita bisa tambahkan variable ini ke script agar tidak perlu lagi mendeklarasikan Pivot table dengan ActiveSheet.PivotTables("PivotPenjualan") tetapi cukup dengan Ptable.
Sehingga notasi scriptnya menjadi
'Insert Row Fields
With PTable.PivotFields("Barang")
.Orientation = xlRowField
.Position = 1
End With
Jika terdapat lebih dari satu Row yang ingin ditambagkan maka atur posisinya dengan menambahkan posisi 2 pada row dan begitupun seterusnya, misalnya
'Insert Row Fields
With PTable.PivotFields("Kuartal")
.Orientation = xlRowField
.Position = 2
End With
Untuk menambahkan data ke Column Field caranya masih sama seperti menambahkan data ke Row diatas perbedaannya hanya pada Orientationnya saja. Tambahkan xlColumnField pada Orientation.
'Insert Row Fields
With PTable.PivotFields("Tahun")
.Orientation = xlColumnField
.Position = 1
End With
Untuk menambahkan Data ke Data Field bisa scriptnya bisa ditulis seperti dibawah ini
'Insert Data Field
With ActiveSheet.PivotTables("SalesPivotTable").PivotFields ("Jumlah")
.Orientation = xlDataField
.Function = xlSum
.NumberFormat = "#,##0"
.Name = "Total Jumlah"
End With
Jika kita gabungkan dengan script pada materi sebelumnya, dimana sebelumnya kita tambahkan script VBA untuk membuat Pivot Table kosong, notasi script lengkapnya maka akan terlihat seperti dibawah ini.
Sub BuatPivot()
Dim PSheet As Worksheet
Dim DSheet As Worksheet
Dim PCache As PivotCache
Dim PTable As PivotTable
Set PSheet = Worksheets("PivotTable")
Set DSheet = Worksheets("Data Sumber")
Set prange = DSheet.Range("A3:I219") 'data Range Untuk Pivot
Set PCache = ActiveWorkbook.PivotCaches.Create _
(SourceType:=xlDatabase, SourceData:=prange)
Set PTable = PCache.CreatePivotTable _
(TableDestination:=PSheet.Cells(1, 1), TableName:="PivotPenjualan")
'Insert Row Fields
With PTable.PivotFields("Barang")
.Orientation = xlRowField
.Position = 1
End With
'Insert Row Fields
With PTable.PivotFields("Kuartal")
.Orientation = xlRowField
.Position = 2
End With
'Insert Row Fields
With PTable.PivotFields("Tahun")
.Orientation = xlColumnField
.Position = 1
End With
'Insert Data Field
With PTable.PivotFields("Jumlah")
.Orientation = xlDataField
.Function = xlSum
.NumberFormat = "#,##0"
.Name = "Total Jumlah"
End With
End Sub
Jika dijalankan maka hasil pivot table yang dihasilkan oleh script diatas, akan terlihat seperti dibawah ini
