gpt4 book ai didi

c# - 使用 C# 将 Sumif 公式添加到单元格错误

转载 作者:行者123 更新时间:2023-11-30 18:14:02 31 4
gpt4 key购买 nike

我正在尝试通过 C# 将公式添加到 Excel 中多行的单元格中。我试图用公式实现的是 SUM所有不包含字符串 N/A 的单元格, 在 column D to S在每一行。

这是我要添加的公式:

=SUMIF(DX:SX,"<>N/A")

(在上面的例子中我用X改变了实际的行号)

所以我循环遍历行并执行此操作:

    foreach (var row in rows)
{
ws.Cells[row, 2].Formula = string.Format("=SUMIF(D{0}:S{0},\"<>N/A\")", row + 1);
}

这里我得到了异常:

System.ArgumentException : Failed to parse: =SUMIF(D2:S2,"<>N/A"). Error: Unsupported function: SUMIF.For list of supported functions consult GemBox.Spreadsheet documentation.

我还尝试添加公式的瑞典语版本:

=SUMMA.OM(DX:SX;"<>N/A")

(在上面的例子中我用X改变了实际的行号)

这里我得到了异常:

System.ArgumentException : Failed to parse: =SUMMA.OM(D2:S2;"<>N/A"). Error: Not expected: SUMMA

最奇怪的是,如果我在 Excel 的单元格中手动输入瑞典公式,它就可以工作。

感谢我能得到的任何帮助,非常感谢。

最佳答案

实际上,我看不出有任何理由会引发该错误——您所做的似乎应该有效。本着提供另一种测试途径的精神,您还可以尝试公式的 R1C1 版本,看看是否可行:

foreach (var row in rows)
{
ws.Cells[row, 2].FormulaR1C1 = "=SUMIF(R[0]C[2]:R[0]C[17],\"<>N/A\")";
}

除非您的 rows 变量包含无效数字,否则我不确定它为什么会抛出该异常。在您给出的示例错误中,这应该没问题。

关于c# - 使用 C# 将 Sumif 公式添加到单元格错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51436980/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com