PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
Office
[算表] 如何提高代码的运行速度
楼主:
yyingx
(bless)
2016-09-03 13:12:17
软件:excel
版本:2007
Sub aaa()
r = [w65536].End(xlUp).Row
For i = r To 1 Step -1
If Cells(i, 23) = 0 Then Rows(i).Delete
Next
End Sub
如果第23列有10000行,其中等于0的单元格有8000,那么运行改代码就非常费时间
求能大幅度提高速度的宏。
作者: soyoso (我是耀宗)
2016-09-03 13:21:00
不用循环的话,用筛选,删除或是用进阶筛选将不为0的复制到其他地方,就可不删列range.autofilter或range.advancedfilter看是否可改善
楼主:
yyingx
(bless)
2016-09-03 13:32:00
当前的方法就是进阶筛选为0,然后SpecialCells(xlCellTypeVisible).Delete但是还是有点慢
作者: soyoso (我是耀宗)
2016-09-03 13:39:00
那将不为0复制到其他工作表,不删列,改以删工作表
楼主:
yyingx
(bless)
2016-09-03 14:04:00
一会试试,现在有问题是这进阶筛选0,删除,出现了对话框"是否删除工作表整行",如何取消这个对话框,默认"确认"解决了 Application.DisplayAlerts = False
作者: newton41 (Newton)
2016-09-04 01:25:00
不要先做delete,跑一圈挑出来之后一次删除。或是先clear,然后一次sort。
继续阅读
[算表] 请教VBA同时汇出与汇入.txt档
babygiggles
[算表] 宏的表单控件显示运行代码的时间点
yyingx
[算表] SUMIF与LARGE的结合
home0303
[心得] 如何进入excel中高级与vba的历程
waiter337
[文件] WORD 打字起点在页面中间的高度
Qdebby
[算表] 超多笔向下填满请益。
l1ViE
[算表] excel 文字日期转时间日期
waiter337
2013 professional 开出来是wordpad
mewu
[算表] 请教用排序的功能不动到编号栏吗?
jufen
[算表] 关于excel 不同储存格计数累加问题(已解决)
yaochi
Links
booklink
Contact Us: admin [ a t ] ucptt.com