excel-VBA中如何弹出代码执行的时间

2025-10-16 11:07:20

1、一下代码使用for循环将1到30000依次写入A1~A30000单元格,执行起来如下图。用了不少时间才写完,但是不知道多久。

Sub 宏1()

Dim i As Integer

For i = 1 To 30000 Step 1

 Range("A" & i) = i

 Next

End Sub

excel-VBA中如何弹出代码执行的时间

2、修改代码,加入时间提醒。再来看看。可以清晰地看到,程序运行了9.1秒。

Sub 宏1()

Dim i As Integer

Dim t

t = Timer

For i = 1 To 30000 Step 1

 Range("A" & i) = i

Next

MsgBox ("程序运行了" & Format(Timer - t, "0.00" & "秒"))

End Sub

3、为了提高运行速度,我们在代码上面加入一句,看看能否提高运行速度。可以看到速度略有提升。

Sub 宏1()

Application.ScreenUpdating = False

Dim i As Integer

Dim t

t = Timer

  For i = 1 To 30000 Step 1

      Range("A" & i) = i

   Next

MsgBox ("程序运行了" & Format(Timer - t, "0.00" & "秒"))

End Sub

excel-VBA中如何弹出代码执行的时间

4、因为是一次写30000个单元格,而且是用for循环,还是会很费时间的。但是能看出来,时间还是减少了。我们如果将循环做到3000个单元格,时间会是多少?

Sub 宏1()

Application.ScreenUpdating = False

Dim i As Integer

Dim t

t = Timer

  For i = 1 To 3000 Step 1

      Range("A" & i) = i

   Next

MsgBox ("程序运行了" & Format(Timer - t, "0.00" & "秒"))

End Sub

excel-VBA中如何弹出代码执行的时间

5、时间提示对代码的优化还是很有效的。待优化到极致后,删除时间提示的代码即可。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢