using of progress bar

  • Thread starter Thread starter Guest
  • Start date Start date
Of all the progressbars I've seen, your main code needs to advance the
progress bar itself.
I've not seen any asynchronous examples - not even marquee progress bars in
Excel.

example Pseudocode of main code:

Initialise progress bar
for 1 to 100
do something
advance progress bar by 1
next
exit progress bar


I have some progress bars on my website.
 
Hello Robin,

thank you for your reply.
I try and explain it once again.

My macro has following structure:

Sub Main()
Sub 1()
Sub 2()
Sub 3()
...
...
...
Sub n()
End Sub

Macro usually takes from 20s up to 1min, depends on data volume
I would like to know where to place the subroutine "ProgBarDemo" in my code,
eventually how to adjust progressbar code (counter etc...) in order to the
progressbar displays duration of whole macro.

Maybe the solution is simple but I am a beginner in WBA programming :)

thanks

Jan
 
Jan,

It would look something like this

Sub Main
Dim PB as clsProgBar
Set PB = new clsProgBar

'if your subs are being called from a userform, hide the form first using
Me.Hide
With PB

.title = "some title"
.caption1 = "Executing, this may take a while"
.caption2 = "Doing task 1"
.show
doevents

end with

Sub1 x,y,z
pb.progress = 10
pb.caption2 = "doing task 2"

Sub2 a,b,c,d
PB.progress = 20
pb.caption2 = "doing task 3"

'etc,
'and at the end

Sub10
PB.finish

'if called from a userform, show the form again, using me.show
End Sub
 
thanks Robin

that works perfectly

Jan


Robin Hammond said:
Jan,

It would look something like this

Sub Main
Dim PB as clsProgBar
Set PB = new clsProgBar

'if your subs are being called from a userform, hide the form first using
Me.Hide
With PB

.title = "some title"
.caption1 = "Executing, this may take a while"
.caption2 = "Doing task 1"
.show
doevents

end with

Sub1 x,y,z
pb.progress = 10
pb.caption2 = "doing task 2"

Sub2 a,b,c,d
PB.progress = 20
pb.caption2 = "doing task 3"

'etc,
'and at the end

Sub10
PB.finish

'if called from a userform, show the form again, using me.show
End Sub
 
the previous posts have been helpful, but when I hit cancel on the progress
bar... the rest of my code continues running. How do I end my code if I
press cancel on the progress bar?

Thanks!
 
Back
Top