如何解决我有这段代码完全符合我的要求,但速度很慢如果可能的话,希望能得到指点以帮助加快速度
Sub copyInsertRow()
ActiveCell.Offset(1,0).EntireRow.Insert
ActiveCell.EntireRow.copy ActiveCell.Offset(1,0).EntireRow
ActiveCell.Offset(1,0).EntireRow.Font.Bold = False
Cells(ActiveCell.Offset(1,0).Row,6).ClearContents
Cells(ActiveCell.Offset(1,4).ClearContents
Cells(ActiveCell.Offset(1,2).ClearContents
Cells(ActiveCell.Offset(1,3).HorizontalAlignment = xlRight
End Sub
这个宏是插入一个新行,然后复制并清除我正在构建的产品定价电子表格的一些数据。它完全按预期工作,但速度非常慢。我对 Excel VBA 还很陌生,如果可能的话,希望有一些大师的指点来帮助我加快速度?感谢您的帮助!
解决方法
我有点惊讶代码很慢,当然除非你有一个非常大的表要插入行。不过,也许这会有所帮助。
您想摆脱所有需要重新评估的重复代码。
Sub CopyInsertRow()
Application.ScreenUpdating = False '*** Turn off screen updating for speed.
ActiveCell.End(xlToLeft).Select '*** Insure you're in Col A
With ActiveCell
.Offset(1,0).EntireRow.Insert
.EntireRow.Copy .Offset(1,0).EntireRow
.Offset(1,0).EntireRow.Font.Bold = False
.Offset(1,5).ClearContents
.Offset(1,3).ClearContents
.Offset(1,1).ClearContents
.Offset(1,2).HorizontalAlignment = xlRight
End With
End Sub
注意:要使偏移量与此代码一起使用,您必须从已知列开始,因此第二条语句可以让您进入当前行的 A 列。
HTH
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。