众所周知,与 Excel 和 .Net 的互操作非常慢。我知道能够一次性将一组值复制到工作表对象,但根据我的秒表,甚至有一个类型的命令(在 VB.Net 内):
WS.Range(--range string here--).Value = array
...耗时超过 0.3 秒!这加起来是因为我的例程向每个工作表写入了几十个数组,并且每个工作簿有几个工作表,我可能还会遍历几个工作簿。
如果有办法一次写入不连续的、非矩形的单元组,那么我可以用一个写入命令完成整个 WS。但我认为没有办法在保留“中间”单元格的原始值的同时做到这一点。这些工作簿是预先格式化的,所以我必须保留特定的单元格。
我能做些什么来加快速度吗?