ET疑难千寻千解丛书之EXCEL2010编程与实践 罗刚君 章兰新 黄朝阳 编著
疑难17
如何优化过程“隔一行插入一行” 对图所示的数据每隔一行插入一行,其代码如下。如何进行优化?
- Sub 隔一行插入行()
- Application.ScreenUpdating = False '关闭屏幕刷新
- Dim i As Integer
- For i = Cells(Rows.Count, 1).End(xlUp).Row To 3 Step -1 '遍历每个已用行
- Rows(i).Insert '插入新行
- Next
- Application.ScreenUpdating = True '恢复屏幕更新
- End Sub
复制代码è解决方案 图中的C列有计算公式,那么将自动计算修改为手动计算再插入行可以大大提速。 í操作方法 步骤1
在执行插入行的代码前设置手动计算,完成插入行后恢复自动计算,完整代码如下:
- Sub 隔一行插入行2()
- Application.ScreenUpdating = False '关闭屏幕刷新
- Application.Calculation = xlManual '手动计算
- Dim i As Integer
- For i = Cells(Rows.Count, 1).End(xlUp).Row To 3 Step -1
- Rows(i).Insert
- Next
- Application.Calculation = xlAutomatic '自动计算
- Application.ScreenUpdating = True '恢复屏幕更新
- End Sub
复制代码步骤2
分别执行两段代码,其结果一致,第二行开始每隔一行插入空行,如图。
============================= 以上摘自《EXCEL2010编程与实践》
|