Ms office 从二维数组VB.net写入excel文件

Ms office 从二维数组VB.net写入excel文件,ms-office,openxml,export-to-excel,openxml-sdk,Ms Office,Openxml,Export To Excel,Openxml Sdk,我有一个通过迭代数据读取器形成的二维数组。早些时候,我使用automation编写excel并使用range,我能够一次性将二维数组的内容写入excel。这大大提高了性能,因为只需与excel进行一次交互。但是遇到了一个问题,我的服务器没有安装office,所以我尝试使用openxml的另一种选择(在这种情况下,我只需要安装一个dll) 我在网上看到了几个使用openxml的例子,但我不确定是否有办法将二维数组的内容直接转换到工作表中。我不想迭代datareader并逐个单元更新每个单元,因为我

我有一个通过迭代数据读取器形成的二维数组。早些时候,我使用automation编写excel并使用range,我能够一次性将二维数组的内容写入excel。这大大提高了性能,因为只需与excel进行一次交互。但是遇到了一个问题,我的服务器没有安装office,所以我尝试使用openxml的另一种选择(在这种情况下,我只需要安装一个dll)

我在网上看到了几个使用openxml的例子,但我不确定是否有办法将二维数组的内容直接转换到工作表中。我不想迭代datareader并逐个单元更新每个单元,因为我有65列和近90000行


SDK是否提供了任何内置命令来执行此操作?

您不必担心迭代,因为不再存在“与excel交互”dcom惩罚。打开的xml只是写入一个流,您可以使用缓冲区将刷新保存到磁盘

仅供参考,我个人使用封闭xml(nuget@)创建Excel文件,发现它比使用原始的开放xml标准要好得多


最后,即使服务器上有excel,也不应该在没有UI的环境中将excel用作dcom服务器。

我有90000x65表,所以可以迭代每个单元格并将其添加到excel中吗?我能看到nuget的任何例子吗?是的,大小对closedXML api并不重要。您仍然需要刷新到磁盘以避免内存问题。closedxml的文档位于