Pivot Öğesinin Mutlak Konumunu Belirleme
Contents
[
Hide
]
Bazen, kullanıcının pivot öğelerinin mutlak konumunu belirtmesi gerekir, Aspose.Cells API birkaç yeni özelliği ve kullanıcı gereksinimini karşılamak için bir yöntemi kullanıma sunmuştur.
- KatmaÖzet Öğe. Konum üst düğümden bağımsız olarak tüm PivotItem’lerdeki konum dizinini belirtmek için kullanılabilen özellik. KatmaPivotItem.PositionInSameParentNode aynı üst düğüm altındaki PivotItems içindeki konum dizinini belirtmek için kullanılabilen özellik.
- KatmaPivotItem.Move(int sayısı, bool isSameParent)count değerine göre öğeyi yukarı veya aşağı taşımak için kullanılan yöntem; burada count, PivotItem’i yukarı veya aşağı hareket ettirmek için konum sayısıdır. Sayım değeri sıfırdan küçükse, öğe yukarı taşınır, burada sayım değeri sıfırdan büyükse, PivotItem aşağı hareket eder, Boolean tipi isSameParent parametresi, taşıma işleminin aynı üst düğümde gerçekleştirilip gerçekleştirilmeyeceğini belirtir. ya da değil.
- EskimişPivotItem.Move(int sayısı) yöntemi bu nedenle yeni eklenen yöntemin kullanılması önerilir.PivotItem.Move(int sayısı, bool isSameParent) yerine.
Aşağıdaki örnek kod, bir Pivot Tablo oluşturur ve ardından aynı üst düğümdeki Pivot Öğeleri konumlarını belirtir. indirebilirsinizkaynak Excel veExcel çıktısı referansınız için dosyalar. Çıktı Excel dosyasını açarsanız, “4H12” Pivot Öğesinin “K11” ebeveyninde 0. konumda ve “DIF400” 3. konumda olduğunu göreceksiniz. Benzer şekilde, CA32 1 konumunda ve AAA3 2 konumunda
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
Workbook wb = new Workbook(dataDir + "source.xlsx"); | |
Worksheet wsPivot = wb.Worksheets.Add("pvtNew Hardware"); | |
Worksheet wsData = wb.Worksheets["New Hardware - Yearly"]; | |
// Get the pivottables collection for the pivot sheet | |
PivotTableCollection pivotTables = wsPivot.PivotTables; | |
// Add PivotTable to the worksheet | |
int index = pivotTables.Add("='New Hardware - Yearly'!A1:D621", "A3", "HWCounts_PivotTable"); | |
// Get the PivotTable object | |
PivotTable pvtTable = pivotTables[index]; | |
// Add vendor row field | |
pvtTable.AddFieldToArea(PivotFieldType.Row, "Vendor"); | |
// Add item row field | |
pvtTable.AddFieldToArea(PivotFieldType.Row, "Item"); | |
// Add data field | |
pvtTable.AddFieldToArea(PivotFieldType.Data, "2014"); | |
// Turn off the subtotals for the vendor row field | |
PivotField pivotField = pvtTable.RowFields["Vendor"]; | |
pivotField.SetSubtotals(PivotFieldSubtotalType.None, true); | |
// Turn off grand total | |
pvtTable.ColumnGrand = false; | |
/* | |
* Please call the PivotTable.RefreshData() and PivotTable.CalculateData() | |
* before using PivotItem.Position, | |
* PivotItem.PositionInSameParentNode and PivotItem.Move(int count, bool isSameParent). | |
*/ | |
pvtTable.RefreshData(); | |
pvtTable.CalculateData(); | |
pvtTable.RowFields["Item"].PivotItems["4H12"].PositionInSameParentNode = 0; | |
pvtTable.RowFields["Item"].PivotItems["DIF400"].PositionInSameParentNode = 3; | |
/* | |
* As a result of using PivotItem.PositionInSameParentNode, | |
* it will change the original sort sequence. | |
* So when you use PivotItem.PositionInSameParentNode in another parent node. | |
* You need call the method named "CalculateData" again. | |
*/ | |
pvtTable.CalculateData(); | |
pvtTable.RowFields["Item"].PivotItems["CA32"].PositionInSameParentNode = 1; | |
pvtTable.RowFields["Item"].PivotItems["AAA3"].PositionInSameParentNode = 2; | |
// Save file | |
wb.Save(dataDir + "output_out.xlsx"); |
Lütfen unutmayın, kullanmadan önce PivotTable.RefreshData ve PivotTable.CalculateData yöntemlerini çağırmak gerekir.Özet Öğe. Konum, PivotItem.PositionInSameParentNode özellikler vePivotItem.Move(int sayısı, bool isSameParent) yöntem.