2010-08-12 136 views
1

我使用Excel PIA的做一些寫作和閱讀/從Excel電子表格,我可能只是被偏執,但我有以下問題:Excel中重新計算

至於我可以告訴Excel中重新計算公式在工作表上每寫一次,但...

  1. 是這種情況? - 也就是說,可以做一系列的寫讀寫讀取,而不是讀取正確的重新計算(例如,如果其複雜的公式和花費太長的時間,我可能會讀取一個尚未重新計算的值?)

  2. 有無論如何去做這樣的事情:

    BeginUpdate();寫很多值EndUpdate();重新計算(); readlotsofvalues?

我還沒有看到任何躲閃的結果,但我想應該能夠知道「肯定」;)

回答

2

一些VBA職能,將工作是here,使用這些你可以使用Interop中的SpreadsheetClass。 對於C#,您有Calculate() function

+0

謝謝lance計算函數是我失蹤的一個。 我仍然有興趣知道,如果excel提供任何保證書,那麼當您在寫入電子表格之後,只要寫入表格,就可以保證電子表格是一致的,同樣,如果在我寫入大量單元格時禁用重新計算。 – GreyCloud 2010-08-16 09:08:29

+0

@Grey,在Excel VBA中,您將Application.Calculation設置爲xlCalculationManual來關閉計算,xlCalculationAutomatic將其重新打開。雖然在C#中你必須使計算工作,但我不太確定如果電子表格是開放的,這實際上是如何工作的,我不知道它的一致性或是否存在競爭條件。 – 2010-08-16 15:16:10

+0

謝謝蘭斯,我會考慮關閉在Excel中的自動計算 – GreyCloud 2010-08-20 13:09:42