C# Excel重新计算

C# Excel重新计算,c#,.net,excel,interop,C#,.net,Excel,Interop,我正在使用excel pia对excel电子表格进行书写和阅读,我可能只是有点偏执,但我有以下问题: 据我所知,Excel会在每次写入时重新计算工作表中的公式,但 是这样吗ie是否可以进行一系列的写-读操作而不读取正确的重新计算(例如,如果它是一个复杂的公式,需要花费太长的时间,我是否可以读取一个尚未重新计算的值?) 是否还有其他方法可以执行以下操作: 开始更新();写很多值EndUpdate();重新计算();readlotsofvalues 我没有看到任何不可靠的结果,但我希望能够“肯定地”

我正在使用excel pia对excel电子表格进行书写和阅读,我可能只是有点偏执,但我有以下问题:

据我所知,Excel会在每次写入时重新计算工作表中的公式,但

  • 是这样吗ie是否可以进行一系列的写-读操作而不读取正确的重新计算(例如,如果它是一个复杂的公式,需要花费太长的时间,我是否可以读取一个尚未重新计算的值?)

  • 是否还有其他方法可以执行以下操作:

    开始更新();写很多值EndUpdate();重新计算();readlotsofvalues


  • 我没有看到任何不可靠的结果,但我希望能够“肯定地”知道。)

    一些可用的VBA函数是,要使用这些函数,您可以在Interop中使用SpreadsheetClass。
    对于C#,您有了。

    谢谢,我缺少的是计算函数。我仍然有兴趣知道excel是否提供了任何保证,即当您在写入电子表格后读取电子表格时,该电子表格是一致的,同样,当我写入大量单元格时,是否存在禁用重新计算的情况。@Grey,在Excel VBA中,您可以将Application.Calculation设置为xlCalculationManual以关闭计算,将xlCalculationAutomatic设置为重新打开。在C#中,你必须让计算工作正常,但如果电子表格是打开的,我不确定这到底是如何工作的,我也不知道它的一致性,或者是否存在竞争条件。谢谢Lance,我会考虑在excel中关闭自动计算