Varolan bir pivot tablo veri kaynağının nasıl güncelleneceğini bilmek istiyorum. Microsoft.Office.Interop.Excel
kullanıyorum ve kullanıcıları Excel 2010 ile hedefliyorum.C# kullanarak Özet Tablo veri kaynağı nasıl güncellenir?
Şu anda iyi çalışan pivot tabloyu yenileyebilirim, ancak daha fazla satır eklendiğinde, bu satırları pivot tablo veri kaynağına eklemek istiyorum. Örneğin, Excel'de görüntülendiğinde pivot tablo veri kaynağı, DataSourceWorksheet!$A$2:$U$26
'dur ve güncelleme/yenileme excel dosya kodumun çalıştırılmasından sonra DataSourceWorksheet!$A$2:$U$86
(60 daha fazla satır) olarak değiştirilmesini istiyorum.
İşte benim kod
Application excelApplication = new Application();
Workbooks workbooks = excelApplication.Workbooks;
wrkBook = workbooks.Open(EXCEL_DOCUMENT_PATH, Missing.Value, false, Missing.Value,
Missing.Value, Missing.Value, Missing.Value, Missing.Value,
Missing.Value, true, Missing.Value, Missing.Value,
Missing.Value, Missing.Value, Missing.Value);
/* update data source worksheet code here (omitted for example) */
Worksheet pivotWorkSheet = (Worksheet)wrkBook.Sheets[PIVOT_SHEET_NAME];
PivotTable pivot = (PivotTable)pivotWorkSheet.PivotTables(pivotTableName);
/* I would like to update the pivot tables data source here...
I could use Range object from data source worksheet...
Basically just want to tell pivot table, use these cells now... */
pivot.RefreshTable();
/* cleanup code here (omitted for example) */
sadece wrkBook.PivotTableWizard(...)
kullanarak tekrar özet tablo yenilemek için olacağını, çalışabilir bir çözüm basitleştirilmiş versiyonu. Ancak, bu durum benim durumum için çalışmayacaktır çünkü kullanıcılar seçilen alanları, satırları, sütunları vb. Değiştirerek pivot tablolarını değiştirmeyi tercih edecektir. Veri kaynağı çalışma sayfası değiştiğinde sadece güncellenmesi gerekir.
Bunun neden oylandığından emin değilim, bana makul bir soru gibi görünüyor. – neontapir
Evet, emin değilim, bu, MSDN'de veya benzer kaynaklarda kolayca bulduğum bir şey değil. –