在application.screenupdate = false时显示内置进度条?

时间:2011-03-02 21:43:27

标签: excel excel-vba vba

我只是想知道是否仍然可以显示内置进度条,而我使用此设置:

Application.ScreenUpdating = False

我知道我可以通过使用UserForm来创建自己的进度条,但我宁愿使用内置的

Application.StatusBar

显示我编写的消息和内置进度条以显示文件打开进度,如Excel将显示是否已启用ScreenUpdating。

这可能吗?我应该编程自己的进度条吗?这更像是一个性能问题,如果它能使我的程序在1分35秒而不是1分30秒内完成,我宁愿不这样做。

1 个答案:

答案 0 :(得分:0)

不,这是不可能的。仔细考虑一下 - 你告诉Excel不要更新用户界面,所以显然你不能更新用户界面。如果要显示进度,则必须允许Excel更新U / I或创建自己的进度条。

当然,最快的方法是不要费心去显示进度。如果性能非常重要,1m30s和1m35s之间的差异很重要,请不要显示进度信息,而是在1m29s或更短时间内完成。