View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Peter T Peter T is offline
external usenet poster
 
Posts: 5,600
Default UserForm - Stop updating the caption after I click on.

Your code progress bar seems to work OK for me, I can't recreate the problem
of the label not redrawing.

Don't think you need both DoEvents and .Repaint. Doevents allows a smoother
redraw but might have some negative consequences if user activates a control
that starts something else. Simply setting a global boolean to exit control
events while work is going on might be enough.

Regards,
Peter T

"Alex St-Pierre" wrote in message
...
Hi,
I display a userform with a progress bar (from 0% to 100%). The progress

bar
is displayed correctly until I click on the form. When this happens, the

box
and the percentage freeze (not responding). The macro continu to run
correctly but it doesn't update the percentage thereafter. Is there

something
I can add to the macro below to update the caption or the userform?
Thank you!
Alex

Sub ProgBar(ProgressLevel As Variant, ProgLabel As String)
DoEvents
With UserForm3
If IsNumeric(ProgressLevel) Then
.Caption = fPercent(CStr(Round(ProgressLevel, 0)))
.LabelPROGBAR.Width = (UserForm3.Width - 0 *ProgressLevel/100

.LabelPROGBAR.BackColor = RGB(0, 255 / 3, 255)
Else
.Caption = ProgressLevel
End If
.TextBoxPROGBAR.text = ProgLabel
.Repaint
End With
End Sub
--
Alex St-Pierre