3

我们有一个非常大的数据集(大约 40k 行)。我想写入excel文件。

我已经尝试逐个单元格地写入excel文件写入数据并且它可以工作。

我面临的问题是,写excel需要很多时间。

有没有有效的方法来做同样的事情。

4

2 回答 2

0

无需循环遍历每一行/列,而是将完整数据集分配给内存中的一个数组 - 然后将此数组分配给相同维度的 Range 对象。在 VBA 中,这看起来像:

Dim arr as Variant
arr = ... ' Your code to fill the array here
Set Workbook("YourWorkbook").Worksheets("Worksheetname"). _ 
    Range(1,1).Resize(40000, 20).Value = arr

希望你能把它翻译成c#...

于 2013-02-21T07:32:12.100 回答
0

如果你直接写到 excel,Albert 的想法是可行的——但它仍然会很慢。我会使用像 EPPLUS 这样的库将大量数据写入 excel - 它更快、更可靠。

于 2013-02-21T07:57:16.880 回答