如何从Excel中dynamic地删除行并使用VB.net或C#保存

我正在从Excel读取数据并逐行处理文件。

如果进程成功,那么我需要从Excel中删除该行并将其保存。 如果失败,则继续下一行,依此类推。

最初我使用OLEDB从Excel读取数据,但通过使用这个我不能删除行。

我想我们可以通过使用COM组件来解决这个问题。 我很感激你的帮助来解决这个问题。

在服务器上使用Office Interop / COM(ASP.NET …)不受MS支持 – 请参阅http://support.microsoft.com/default.aspx?scid=kb;EN-US;q257757#kb2

要处理服务器场景中的Excel文件( 例如删除行 ),有几个选项(免费和商业):

我可以推荐Aspose.Cells和Flexcel …没有尝试SpreadsheetGear,但听到+读了很多关于它的好东西(它也有一个组件,可以在ASP.NET中显示Excel等)。

免费选项(尽pipe只适用于较新的xlsx格式!)例如来自MS和EPPlus的 OpenXML 2 。

你也可以查看http://www.officewriter.com/它的工作原理,并支持Excel二进制文件格式(xls)和OOXML文件格式(xlsx)。 Yahia正确地说在服务器上使用Office Interop / COM不被Microsoft支持。 根据我的经验,第三方工具具有更高的性能,易于使用,而且更加灵活。

在旁边注意OfficeWriter也有Word的支持,并不仅限于Excel。