我用C#编写了一个应用程序。在这个应用程序中,我需要打开和关闭多个Excel文件以及从/向它们读/写数据,这导致应用程序运行缓慢。你建议用什么方法来加速应用程序?
将数据写入excel文件的代码示例:
Excel.Worksheet excelSheet = (Worksheet)(excelBook.Worksheets[1]);
Range rng;
rng = excelSheet.get_Range("C2");
rng.Value2 = txtName.Text;
答案 0 :(得分:2)
如果没有更多信息,很难说出你在做什么。假设您在打开excel文件时正在对其进行某些操作,可能会尝试在代码开头关闭屏幕更新。
Application.ScreenUpdating = False
如果您在工作表或类似操作之间移动大量数据,这会对速度产生深远的影响。
如果您将其打开以供用户完成工作,请在代码末尾更新屏幕更新。
Application.ScreenUpdating = True
答案 1 :(得分:2)
您无需打开Excel文件即可读取/写入Excel文件。你可以使用OLEDB来做它,它应该快得多。搜索“OLEDB Excel c#”。
这是一个例子: http://www.codeproject.com/Articles/8500/Reading-and-Writing-Excel-using-OLEDB