gpt4 book ai didi

c# - 如何在输入值时停止Excel-DNA函数计算

转载 作者:太空狗 更新时间:2023-10-29 22:16:13 26 4
gpt4 key购买 nike

我在 C# 中实现了一些复杂且计算量大的函数。为了在 Excel 中使用它,我通过 Excel-DNA 创建了一个 Excel-AddIn。

现在,当我在 Excel 中调用该函数并开始输入值时,它甚至在我完成所有输入之前就开始计算。更重要的是,当我单击单元格并更改某些输入时,该函数也会重新计算。通常我不会介意的。但由于性能缓慢,它把工作变成了一种折磨

有没有办法抑制这种行为? (将计算设置为手动似乎不起作用)基本上我希望 Excel-DNA 公式仅在按下 F9 时(重新)计算。

如果有人有其他语言的解决方案,我会很乐意将其用作灵感并将其移植到 c#。

最佳答案

根据 Govert(XL DNA 的作者)的说法,您可以这样做:

可以调用ExceDnaUtil.IsInFunctionWizard()进行检查。

所以你的函数可能会去:

public static object SlowFunction()
{
if (ExcelDnaUtil.IsInFunctionWizard()) return "!!! In Function
Wizard";

// do the real work....
}

XLDANA 相关问题和答案值得一看的 Excel DNA Google 群组 https://groups.google.com/forum/#!forum/exceldna

关于c# - 如何在输入值时停止Excel-DNA函数计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21304454/

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