Excel'de VBA üzerinden dinamik grafik oluşturma


1

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
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.