问题描述
在使用EPPlus NuGet包以编程方式生成Excel工作表时,即使SUM函数引用的是包含数字的单元格,也始终在导出的工作表上返回0.00。 如果我在Excel中打开工作簿,请单击每个数字单元格,然后按F2和Enter,然后SUM函数将正确计算。但是,要求客户对其导出的每个单元格执行此操作是不合理的,因此我需要找到一种方法来以编程方式刷新这些SUM公式。有任何想法吗? 下面是在给定一行作为参数时构建公式的函数。由于此例程的所有其他区域均按预期工作,因此我不会粘贴整个例程,因为它很冗长。如果您还需要更多,请告诉我。谢谢!
C#:
private static string[] BuildPackageChargetotalFormulas(int row)
{
var formulas = new string[]
{
"=SUM(","=SUM("
};
var startColumn = 28;
var count = 25;
var interval = 3;
var column = startColumn;
for (var i = 1; i <= count; i++)
{
var itemChargeAddress = (new ExcelCellAddress(row,column)).Address;
var itemNewChargeAddress = (new ExcelCellAddress(row,column + 1)).Address;
formulas[0] += itemChargeAddress + ",";
formulas[1] += itemNewChargeAddress + ",";
column += interval;
}
// Trim off the trailing commas and close the parens
for (var i = 0; i < formulas.Length; i++)
{
formulas[i] = formulas[i].Substring(0,formulas[i].Length - 1) + ")";
}
return formulas;
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)