c#:如何通过c#代码在Excel中添加公式.得到无效公式错误
本文关键字:错误 无效 添加 何通过 代码 Excel | 更新日期: 2023-09-27 18:07:39
列'I' have To date
列'H'有From date
我想计算两个日期之间的差值并将其存储在列'J'中。
=DATEDIF(I18,H18,"d")"如果我执行下面的代码,我会得到以下错误。
错误:无效公式。用户代码未处理ArgumentException。
private void FillExcelCellFormula(IRange cell, int row, int column, object content)
{
string row1 = "I" + Convert.ToString(row);
string row2 = "H" + Convert.ToString(row);
string dquote = @"""d""";
string daysFormula = "=DATEDIF(" + row1 + "," + row2 + "," + dquote + ")";
cell.FormulaR1C1 = daysFormula;
}
公式值以天为单位填充公式= "=DATEDIF(I18,H18,'"d'")"
虽然我不确定'''是否是错误背后的原因。
即使是简单的求和函数也不起作用。我将公式替换为一个更简单的公式,如
string daysFormula = "=SUM(A18:B18)";然而,我得到同样的错误。
我要打电话去图书馆吗?
有什么建议吗?
我建议检查To &从日期。
它们以什么格式存储在你的Excel文件中?
如果它们被存储为字符串,这可能会导致错误。日期需要存储为整数,样式应用于将它们显示为日期。
顺便说一句,愚蠢的问题:如果你使用Formula
而不是FormulaR1C1
会发生什么:
cell.Formula = daysFormula;