2016-11-22 53 views
0

我需要一些幫助。如何使用EPPLUS在excel中關閉重新計算選項

我有這樣的代碼非常簡單:http://pastebin.com/xc9xNHLQ

我遇到的問題是,每次我打開電子表格,並試圖關閉它的時候,我被要求保存沒做任何的變化而變化。

我知道問題是在SUM公式中,但有沒有一種方法禁用?

使用EPPLU和工作室2015年

感謝

+0

似乎在工作簿上有一個'FullCalcOnLoad'屬性。你有沒有檢查它是否設置爲true,並嘗試將其設置爲false? –

+0

設置爲false沒有任何區別。仍然被要求保存更改。 –

回答

1

必須用

package.Workbook.CalcMode = ExcelCalcMode.Manual; 

和手動計算致電:

package.Workbook.Calculate(); 

UPDATE:從查爾斯的」評論 魔術師r'和這篇文章,你可以設置FullCalcOnLoad爲false然後手動計算。這是你操縱的示例代碼:

 package.Workbook.FullCalcOnLoad = false; 
     worksheet.Cells[RowNumber, 2].Value = "Total:"; 
     worksheet.Cells[RowNumber, 3].Formula = "SUM(C12:C" + (RowNumber - 1) + ")"; 
     worksheet.Cells[RowNumber, 2, RowNumber, 3].Style.Font.Name = "Arial"; 
     worksheet.Cells[RowNumber, 2, RowNumber, 3].Style.Font.Size = 12; 
     worksheet.Cells[RowNumber, 2, RowNumber, 3].Style.Font.Bold = true; 
     worksheet.Row(RowNumber).Height = 20; 
     worksheet.Cells[RowNumber, 2, RowNumber, 3].Style.Border.Right.Style = ExcelBorderStyle.Thin; 
     worksheet.Calculate(); 
     package.Save(); 
+0

太棒了。將提供一個去和回報。 –

+0

可悲的是不按我想要的方式工作。不要求保存它,但我的單元格的內容是空白的。我想我需要將它存儲在一個增量整數中,而不是使用SUM。感謝這兩個建議。 –

+0

@TomPisz查看更新部分。它爲我工作。 –