gpt4 book ai didi

c# - 为什么我在使用 FormulaArray 时不断收到 COM 异常

转载 作者:太空宇宙 更新时间:2023-11-03 11:20:29 25 4
gpt4 key购买 nike

try
{
sheet1.get_Range("M34").FormulaArray =
"=SUM(IF(Sheet2!D6:D122=M31,IF(Sheet2!P6:P122>0,Sheet2!I6:I122/SUMIFS(Sheet2!I:I,Sheet2!C:C,Sheet2!C6:C122,Sheet2!D:D,Sheet2!D6:D122)*ROUNDUP(SUMIFS(Sheet2!I:I,Sheet2!C:C,Sheet2!C6:C122,Sheet2!D:D,Sheet2!D6:D122)/Sheet2!Q3,0),0),0))";
}
catch (COMException ex) { MessageBox.Show(ex.Message); }

任何人都知道为什么上面的代码会抛出 COM 异常。如果我进入 excel 并按 ctrl+shift+enter,该公式工作正常,但是当我的程序写入 excel 时,它会抛出异常。我在程序的其他地方使用了 Range.FormulaArray,它运行良好。也许有人可以指出这个问题,因为我快疯了,似乎其他人也有同样的问题,但在线没有解决方案。

最佳答案

我试过这个变通办法,它奏效了。

try        
{
sheet1.get_Range("M33").FormulaArray = "=SUMIFS(Sheet2!I:I,Sheet2!C:C,Sheet2!C6:C122,Sheet2!D:D,Sheet2!D6:D122)";

sheet1.get_Range("M34").FormulaArray = "=SUM(IF(Sheet2!D6:D122=M31,IF(Sheet2!P6:P122>0,Sheet2!I6:I122/Sheet1!M33*ROUNDUP(Sheet1!M33/Sheet2!Q3,0),0),0))";
}
catch (COMException ex) { MessageBox.Show(ex.ToString); }

关于c# - 为什么我在使用 FormulaArray 时不断收到 COM 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11196822/

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