18金币
本帖最后由 4人防 于 2025-3-6 14:49 编辑
打开一个xml(会存在很多的公式),
在批量给单元格赋值前,我先设置AutoCalculation = false;
写完之后,我再AutoCalculation = true;
for (var i = 0; i < fp.Sheets.Count; i++)
{
fp.Sheets.AutoCalculation = false;
fp.Sheets.SuspendAutoUpdateChartData();
fp.Sheets.SuspendFormulaParsing();
fp.Sheets.AutoFilter = false;
fp.Sheets.AutoGenerateColumns = false;
fp.Sheets.AutoSortEnhancedContextMenu = false;
fp.Sheets.AutoSortFrozenRows = false;
fp.Sheets.AutoSortTrailingFrozenRows = false;
fp.Sheets.AutoUpdateNotes = false;
fp.Sheets.DataAutoCellTypes = false;
fp.Sheets.DataAutoHeadings = false;
fp.Sheets.DataAutoSizeColumns = false;
}
fp.SuspendLayout();
虽然能提升点速度,但是还是 消耗时间太多,我已经把所有能关闭的,都关闭了,还有其它方法么?
|
|