如何在EPPlus中将数据域函数更改为从sum计数?

时间:2012-10-05 13:01:01

标签: c# winforms excel epplus

在我的Pivot表中,我有一个数据字段,我希望将其汇总为count。我尝试将subtotalfunction属性更改为count,但它仍显示总和。有人能给我一个如何做到这一点的例子吗?

换句话说,任何人都可以给我一个数据透视表的示例,您可以在其中查看计数而不是总和。

我正在使用EPPlus最新版本。 3.1.1

非常感谢:)

编辑:这就是我正在尝试的。

                    var wsPivot = package.Workbook.Worksheets.Add("Pivot");
                    var pivotTable = wsPivot.PivotTables.Add(wsPivot.Cells["A55"], dataRange, "Table");
                    pivotTable.MultipleFieldFilters = true;
                    pivotTable.RowGrandTotals = true;
                    pivotTable.ColumGrandTotals = true;
                    pivotTable.Compact = true;
                    pivotTable.CompactData = true;
                    pivotTable.GridDropZones = false;
                    pivotTable.Outline = false;
                    pivotTable.OutlineData = false;
                    pivotTable.ShowError = true;
                    pivotTable.ErrorCaption = "[error]";
                    pivotTable.ShowHeaders = true;
                    pivotTable.UseAutoFormatting = true;
                    pivotTable.ApplyWidthHeightFormats = true;
                    pivotTable.ShowDrill = true;
                    pivotTable.FirstDataCol = 3;
                    pivotTable.RowHeaderCaption = "Caption";

                    var pageField = pivotTable.Fields["field1"];
                    pivotTable.PageFields.Add(pageField);

                    var rowField = pivotTable.Fields["cust"];                    
                    pivotTable.RowFields.Add(rowField);

                    var dataField = pivotTable.Fields["id"];

                    dataField.SubTotalFunctions = OfficeOpenXml.Table.PivotTable.eSubTotalFunctions.Count;
                    pivotTable.DataFields.Add(dataField);

2 个答案:

答案 0 :(得分:9)

我明白了。这对我有用

pivotTable.DataFields.Add(dataField);
pivotTable.DataFields[0].Function = DataFieldFunctions.Count;

答案 1 :(得分:0)

这是我的发现,

Dim Field As ExcelPivotTableField = pivotTable.Fields(strFieldName)
    Dim DataField As ExcelPivotTableDataField = pivotTable.DataFields.Add(Field)
    DataField.Function = DataFieldFunctions.Sum