Создание сводной таблицы Excel - C#

Узнай цену своей работы

Формулировка задачи:

Доброго времени суток! Подскажите как создать сводную таблицу(PivotTable) в Excel через среду C#.

Решение задачи: «Создание сводной таблицы Excel»

textual
Листинг программы
Excel.Range oRange = WkSht.get_Range("A4:AN1629");   //Испарвить на ЛастРоу
 
            oSheet = (Excel.Worksheet)WB.Worksheets.Add();
 
            oSheet.Name = "Pivot Table";
 
 
            Excel.Range oRange2 = oSheet.Cells[3, 1];
 
 
            Excel.PivotCache oPivotCache = (Excel.PivotCache)WB.PivotCaches().Create(Excel.XlPivotTableSourceType.xlDatabase, oRange);
            Excel.PivotTable oPivoTable = (Excel.PivotTable)oSheet.PivotTables().Add(oPivotCache, oRange2, "PivotTable");
 
 
            Excel.PivotField oPivotField = (Excel.PivotField)oPivoTable.PivotFields("2_1");
            oPivotField.set_Subtotals(1, false);
            oPivotField.Orientation = Excel.XlPivotFieldOrientation.xlRowField;
 
 
            oPivotField.Position = 1;
 
            Excel.PivotField InnoPivotField = (Excel.PivotField)oPivoTable.PivotFields("5");
            InnoPivotField.set_Subtotals(1, false);//Убирает промежуточные итоги
            InnoPivotField.Orientation = Excel.XlPivotFieldOrientation.xlRowField;
 
 
            Excel.PivotField RVPSPivotField = (Excel.PivotField)oPivoTable.PivotFields("27");
            RVPSPivotField.set_Subtotals(1, false);
            RVPSPivotField.Orientation = Excel.XlPivotFieldOrientation.xlDataField;
            RVPSPivotField.Function = Excel.XlConsolidationFunction.xlSum;
 
            oPivoTable.RowAxisLayout(Excel.XlLayoutRowType.xlTabularRow); //Табличный вид

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.643 из 5