2016-11-22 52 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查看更新部分。它为我工作。 –