【问题标题】:ClosedXML Pivot Table SetCalculationClosedXML 数据透视表集计算
【发布时间】:2018-11-13 17:24:28
【问题描述】:

我正在尝试使用 ClosedXML 通过数据透视表导出数据。我可以使用以下代码创建数据透视表,但 SetCalculation 给我带来了一些麻烦。我想计算每年金额列之间的差额。 Excel 工作表无法加载并导致所有 Excel 崩溃。

var pt = worksheet.PivotTables.AddNew("PivotTable", worksheet.Cell(rowIndex+3, 1), table.AsRange());

pt.ReportFilters.Add("Department");
pt.ReportFilters.Add("Month");
pt.ColumnLabels.Add("Year").SetCollapsed();
pt.RowLabels.Add("Account").SetCollapsed();
pt.RowLabels.Add("Description").SetCollapsed();
pt.Values.Add("Amount", "Amount").NumberFormat.NumberFormatId = 4;
pt.Values.Add("Diff","Diff").SetBaseField("Year").
SetBaseItem("Amount").SetCalculation
(XLPivotCalculation.DifferenceFrom).NumberFormat.NumberFormatId = 4;

【问题讨论】:

  • 这看起来像一个错误。请通过填写完整的问题模板将其记录在 ClosedXML Github 存储库中。

标签: c# asp.net excel closedxml


【解决方案1】:

我想通了:

pt.Values.Add("Amount","Diff%").SetCalculation(XLPivotCalculation.PercentageDifferenceFrom).SetBaseField("Year").SetCalculationItem(XLPivotCalculationItem.Previous).NumberFormat.NumberFormatId = 10;

【讨论】:

    猜你喜欢
    • 2015-11-17
    • 1970-01-01
    • 2018-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多