
excel vba 加一句话表示程序运行进度(cnGzbCursorLocation = adUseClient)
大多数人可能认为软件升级是不会有问题的,事实上,在升级过程中都会对其中共享的一些组件也进行升级,但是其它程序可能不支持升级后的组件从而导致各种问题。
Excel执行VBA时显示进度条。
i为代码的for循环,或者计步器
Applicationstatusbar=”完成 “&format(i/10000100,”000”)
突然想起以看过一遍关于优化SQL查询的文章,里面对SQL查询优化有一个比较详细的说明,特别比较了在已建立索引的字段上进行查询与未建立索引字段上查询速度的差别,想起一句话,“所有快速查找都是基于排序的”,于是马上修改代码,添加对rsGzb中的工号字段进行排序代码(rsGzbSort = "gh ASC"),运行,出错(运行时错误3251:当前提供程序不支持排序或过滤所必须的界面),查看sort属性的帮助,发现里面有一条说明“此属性要求将 CursorLocation 属性设置为 adUseClient。”,于是添加代码(cnGzbCursorLocation = adUseClient),再运行。1秒内就完成了 *** 作
下面就是程序中的那几句关键代码(第1名和第3句在这儿的作用相同,可以只写一句)
cnGzbCursorLocation adUseClient
Set rsGzb = New ADODBRecordset
rsGzbCursorLocation = adUseClient 'CursorLocation对于关闭的recordset对象可读可写,对于打开的recordset对象只读
rsGzbOpen sSqlCommand, cnGzb, adOpenKeyset, adLockBatchOptimistic
要新建一个窗体,在窗体上插入progressbar。比如在sheet1a列中将a1:a10000填充数值,进度条显示代码执行的进度状况。在sheet1中插入一个按钮,单击此按钮执行下面的事件代码:
Private
Sub
CommandButton1_Click()
Dim
i
As
Integer
UserForm1Show
0
With
UserForm1ProgressBar1
Min
=
1
Max
=
10000
Scrolling
=
0
For
i
=
1
To
10000
'
Cells(i,1)
=
i
Value
=
i
UserForm1Caption
=
"正在运行,已完成"
&
i
/
100
&
"%,请稍候!"
Next
End
With
Unload
UserForm1
'
Columns(1)ClearContents
End
Sub
在窗体上插入进度条时,一般工具箱中,没有进度条控件,需要勾选附加控件中的Microsoft
ProgressBar
Control
很简单,先把按钮弄起来,再弄个进度条和时钟,
按钮1被单击,载入窗口1真
时钟周期设为50'可以改这个自己决定
进度条1位置加1
如果真(进度条1位置=100)
销毁'这里是你要的进度条到满之后的 *** 作
以上就是关于excel vba 加一句话表示程序运行进度全部的内容,包括:excel vba 加一句话表示程序运行进度、Excel 请问如何在程序中加入进度条、易语言,我想写一个程序 ,点击按钮,d出进度条,而且进度条会按照周期运行。求大神解疑!!!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)