在c#中如何删除Excel文件里所有工作表的一行

在c#中如何删除Excel文件里所有工作表的一行,第1张

((Excel.Worksheet)myWorkBook.Worksheets[sheetNum]).Delete()按照当前的编号删除

((Excel.Worksheet)myWorkBook.Worksheets[sheetName]).Delete()按照Sheet名字来删除。

不过似乎要先激活当前的工作表哟。

好象很多朋友都是用访问数据库的方式去 *** 作Excel,这样是不是比较麻烦啊?

还是说因为大家都比较熟悉数据库 *** 作,所以才选择这样的一条路。

个人比较倾向于直接访问Excel的对象模型,感觉很清楚明了,而且更体现了面向对象的思想。

我目前手头没有C#环境,所以只好用VBA代码示意一下了,C#的代码应该可以类推。下面这个代码将指定的Excel文件的第一行删除:

Application.Workbooks.Open("C:\temp\Test.xls").ActiveSheet.Rows(1).Delete True

对了,在C#中使用Excel对象模型需要加入Excel Interop库的引用。

首先,若你认为第一列是可以区分两个行是否相同的主键列,则你先按照该列进行排序,之后可以通过类似冒泡排序这样的算法来对各行第一列对应的字符串值进行比较,若相同,则删除位于下面的那行,总行数减1;总行数是for循环的第二个参数,控制循环次数。这是我的思路,你看看适不适用吧!


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/6693043.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-26
下一篇2023-03-26

发表评论

登录后才能评论

评论列表(0条)

    保存