Excel Hakkında Herşey

Pivot Tablolarla Çalışma

Bu bölümde VBA’da pivot tablolarla çalışma örneklerini inceleyeceğiz

Pivot tablo ile data kaynağı arasında Pivot önbelleği yer almaktadır. İşlemlerin bu konunun dikkate alınarak yapılması gerekir.

Öncelikle aşağıdaki gibi “TabloSatis” adında bir tablo yaratalım

Pivot Tablolarla Çalışma

Pivot tablolarla çalışırken tavsiye edilen işlem makro kaydedici kullanarak yöntem ve metotları incelemektir.

Aşağıdaki komutla pivot tablomuzu biçimlendirebiliriz

Sub Pivot_bicimlendirme()

Dim pivot1 As PivotTable
Set pivot1 = ActiveSheet.PivotTables("PivotTablo1")

pivot1.PivotFields("Toplam Tutar").NumberFormat = "#,##0"

pivot1.DataBodyRange.Interior.Color = vbCyan

End Sub

Sonuç:

Sonuç

Aşağıdaki komutla pivot tabloları yenileyebiliriz.

Sub Pivot_yenileme()

ThisWorkbook.RefreshAll

Dim pivot1 As PivotTable
Set pivot1 = ActiveSheet.PivotTables("PivotTablo1")
pivot1.PivotCache.Refresh
    
End Sub

Not: Sadece bir pivot tabloyu yenilesek bile tüm pivot tablolar yenilenmiş olur. İşleyişin farklı excel versiyonlarında farklı çalışması ihtimale karşı (ThisWorkbook.RefreshAll) komutunu kullanmak gerekir.

Pivot Tablolarda Önbellek Değiştirme

Örneğin bir tablo daha yaratalım ve adını “TabloSatis2” koyalım ve Tutar kısmını değiştirelim

Pivot Tablolarda Önbellek Değiştirme

Aynı şekilde PivotTablo1’i kopyalayıp yana yapıştıralım ve adını PivotTablo2 olarak değiştirelim

PivotTablo2

Aşağıdaki komutla PivotTablo2’nin önbelleği TabloSatis2 tablosuna bağlanmış oldu

Sub Pivot_Cache_degistirme()

Dim pivot1 As PivotTable
Set pivot1 = ActiveSheet.PivotTables("PivotTablo2")

pivot1.ChangePivotCache ThisWorkbook.PivotCaches.Create(xlDatabase, "TabloSatis2")

End Sub

Sonuç: Tutar sütununun değiştiğine dikkat edin

Sonuç

Not: Immediate penceresinden ?ThisWorkbook.PivotCaches.Count komutu ile 2 adet pivot önbelleği olduğunu görebilirsiniz.

Aşağıdaki komutla pivot önbelleği tekrar eski haline getirilebilir:

Sub Pivot_yeniden_degistirme()

ActiveSheet.PivotTables("PivotTablo2").ChangePivotCache ("PivotTablo1")
    
End Sub

Sonuç: Tutar sütunu tekrar eski haline geldi

Sonuç: Tutar sütunu tekrar eski haline geldi

Not1: Immediate penceresinden ?ThisWorkbook.PivotCaches.Count komutu ile pivot önbellek adedinin tekrar 1 olduğunu görebilirsiniz.

Not2: Pivot önbellek adedi ne kadar az olursa Excel o kadar hızlı çalışır.

Not3: ?ThisWorkbook.SlicerCaches(1).Name komutu ile birinci dilimleyici önbellek adını görebilirsiniz.

Paylaş:

Ara

Son eklenen

Hücre Rengine Göre Toplama Fonksiyonu

Bu bölümde hücre rengine göre toplama işlemi yapacağız. Aşağıdaki makro kodu, seçtiğimiz hücre rengi ile aralıktaki eşleşen hücrelerin değer...