excel numberformat pivotfield

时间:2013-12-04 18:29:03

标签: c# excel pivot-table number-formatting

设置DateTime的NumberFormat如果至少有一个值为null,则PivotField会引发异常。

我们在C#代码中从头开始构建数据透视表。其中一个工作表包含数据,数据透视表在另一个工作表上存在。如果Data没有null值,下面的代码可以正常工作,但是当Data有一个或多个null-values时,它会引发Exception。 当我们编写pivotField.NumberFormat属性时会触发异常。

Excel.PivotField pivotField;
string sFieldName;

foreach (DataRow row in tblRowFields.Rows)
{
    sFieldName = doReportData.BuildDataFieldCaption(row);
    pivotField = pivotTable.PivotFields(sFieldName);
    pivotField.Orientation = Excel.XlPivotFieldOrientation.xlRowField;
    pivotField.Name = sFieldName;
    pivotField.Subtotals[1] = true;     // Teilergebnisse abschalten. Dafür ermal das mit Index 1 einschalten
    pivotField.Subtotals[1] = false;    // um danach das gleiche wirder auszuschalten.
    if (!string.IsNullOrEmpty(row["Field_DataType_ExcelFmt"].ToString()))
    {
        pivotField.NumberFormat = row["Field_DataType_ExcelFmt"].ToString();
    }
}

异常的(德语)文本是“Die NumberFormat-Eigenschaft des PivotField-Objektes kann nicht festgelegt werden”,在英语中它将像“PivotField-Object的numberformat-property无法定义”一样。 / p>

有人可以确认我的建议,还是有可能为空值设置PivotFields的NumberFormat?

0 个答案:

没有答案