Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用C在Excel电子表格中高效插入行#_Excel_C# 4.0_Com_Excel Interop - Fatal编程技术网

使用C在Excel电子表格中高效插入行#

使用C在Excel电子表格中高效插入行#,excel,c#-4.0,com,excel-interop,Excel,C# 4.0,Com,Excel Interop,我有一个包含1500行数据的电子表格。在电子表格顶部插入行时,我发现使用以下代码插入单行的性能大约为2.5秒: Excel.Range insert_range = _excel.Worksheets["Sheet Name"].Range[insert_address]; insert_range.Insert(Excel.XlDirection.xlDown, Type.Missing); 但是,如果行数增加到20(每次插入),则性能保持不变~2.5秒 有没有办法提高excel插入这些行的

我有一个包含1500行数据的电子表格。在电子表格顶部插入行时,我发现使用以下代码插入单行的性能大约为2.5秒:

Excel.Range insert_range = _excel.Worksheets["Sheet Name"].Range[insert_address];
insert_range.Insert(Excel.XlDirection.xlDown, Type.Missing);
但是,如果行数增加到20(每次插入),则性能保持不变~2.5秒

有没有办法提高excel插入这些行的速度

编辑

性能似乎与工作表中的现有数据量相关,例如,如果工作表包含150行,则需要0.23秒,这似乎是成比例的

谢谢大家

我发现,正如Pynner所建议的,将行添加到数据集的底部是最好的选择

蒂姆,我已经禁用了屏幕更新和设置Calculation=Manual,但这并没有产生任何重大影响


谢谢

将它们添加到数据集的底部而不是顶部将大大提高性能。插入强制为每行重新计算工作表我想您在执行插入时是否尝试过将计算设置为手动并关闭屏幕更新?