Elle veya VBA'da yeni sayfalar eklendiğinde otomatik olarak güncellenecek bir grafik oluşturmaya çalışıyorum. Veriler aylık olarak harici bir tablodan alınır ve her seferinde yeni bir sayfaya eklenir. Veri yapısı her zaman aynıdır.
Dinamik grafikleri nasıl kullanacağımı biliyorum, yeni satırlar ve sütunlar için güncellemelerini istiyorsanız, ancak bu farklı.
PivotChart Wizard ile birlikte makro kaydediciyi kullanmayı denedim ve sonra for döngüsü ile değiştirdim.
For i = 1 To Sheets.Count
ActiveWorkbook.PivotCaches.Create(SourceType:=xlConsolidation, SourceData:= _
Array("Sheet" & i & "!R1C1:R10C7", "Item1"), _
Version:=6).CreatePivotTable TableDestination:="", TableName:= _
"PivotTable1", DefaultVersion:=6
More Code
Next i
Kodun geri kalanı bir Değerler Toplamı oluşturur, vb.
Bir PivotCaches.Item yöntemi olduğunu görüyorum, ancak varolan bir PivotChart'ı güncelleştirme hakkında hiçbir şey göremiyorum.
Normal bir grafik işe yarayacaksa, bu bir Özet Grafik olmak zorunda değildir. Benzer şekilde, VBA olmadan yapmanın bir yolu varsa, bu da iyi.
EDIT: Sanırım çözdüm. Herhangi bir eleştiri açıktır.
For i = 1 To Sheets.Count
If IsEmpty(pivotArray) Then
pivotArray = Array(1)
ReDim Preserve pivotArray(1 To UBound(pivotArray) + 1) As Variant
pivotArray(1) = Array("Sheet" & i & "!R1C1:R4C3", "Item1")
Else
ReDim Preserve pivotArray(1 To UBound(pivotArray) + 1) As Variant
pivotArray(UBound(pivotArray)) = Array("Sheet" & i & "!R1C1:R4C3", "Item1")
End If
Next i