51Testing软件测试论坛

标题: 如何快速删除excel中指定行-亲,快速哦 [打印本页]

作者: LoganChan910    时间: 2012-8-1 11:20
标题: 如何快速删除excel中指定行-亲,快速哦
假定:excel表格中有10000w,其中在D列不规则的出现判断条件如“是”
目的:当发现D列数据不为是的时候,立即删除其所在的行,最后保存全部为“是”的行

如果使用如下代码,执行效率非常低,切循环值越大越慢,求高手指导快速删除方法
For mm = 1 to 10000
   If  (wkSheet.Cells(mm,4)<>"是") Then
      wkSheet_Log.Rows(mm).delete
   End If
Next
作者: yazi0127    时间: 2012-8-1 12:27
可以利用datatable,从datatable删除后再export成excel文件。
作者: fengdishudu444    时间: 2012-8-1 13:06
将excel看作数据库,使用sql语句删除,效率应该比较高
作者: fengdishudu444    时间: 2012-8-1 14:55
刚查了下,excel貌似不能直接支持delete。。。。。。。
作者: AntonioNikki    时间: 2012-8-2 14:30
顶一下,求解释
作者: 雷泽    时间: 2012-8-2 17:24
删除后行数会有变动吧。你这个循环靠谱吗?确定可以都删么?
作者: LoganChan910    时间: 2012-8-3 10:31
回复 4# fengdishudu444


   那好好查查帮助文档吧
作者: LoganChan910    时间: 2012-8-3 10:32
回复 6# 雷泽


    数据行肯定有变动,得用2个嵌套循环,每次都去读一次当前表格的行数,再行删除特定行
作者: fengdishudu444    时间: 2012-8-3 13:32
数据量大  循环肯定会慢的要死啊  不能先导入到数据库    删除完  再导出么




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2