From: NotMe on
Rather than use the status bar, I displayed a modeless form with just a
label control. During the execution of a ton of code operating on a ton of
data, I periodically wrote text to the control telling how far computation
had progressed. It all seemed to work, except that the area where the
label was was whit and no text showed up. When computation was complete
and I stopped updating the control, the last message I had sent displayed
correctly.

Is there any way to use a user form (or anything similar) to display a
rapidly changing message during execution?

Thanks.
From: OssieMac on
Hi,

The following simple example worked OK using Repaint. However, if I inserted
the following line inside the If/End If then it did not work.
Me.Label1.Caption = i

Private Sub CommandButton1_Click()
Dim i As Long

For i = 1 To 100000
Me.Label1.Caption = i
If i Mod 1000 = 0 Then
Me.Repaint
End If
Next i

End Sub


The following code did NOT work and I have no idea why.

Private Sub CommandButton2_Click()
Dim i As Long

For i = 1 To 100000
If i Mod 1000 = 0 Then
Me.Label1.Caption = i
Me.Repaint
End If
Next i

End Sub

--
Regards,

OssieMac


"NotMe(a)Mailinator.com" wrote:

> Rather than use the status bar, I displayed a modeless form with just a
> label control. During the execution of a ton of code operating on a ton of
> data, I periodically wrote text to the control telling how far computation
> had progressed. It all seemed to work, except that the area where the
> label was was whit and no text showed up. When computation was complete
> and I stopped updating the control, the last message I had sent displayed
> correctly.
>
> Is there any way to use a user form (or anything similar) to display a
> rapidly changing message during execution?
>
> Thanks.
> .
>
From: NotMe on
Ahh - Repaing - that was what I needed. Thanks!

On Fri, 28 May 2010 23:28:01 -0700, OssieMac
<OssieMac(a)discussions.microsoft.com> wrote:

>Hi,
>
>The following simple example worked OK using Repaint. However, if I inserted
>the following line inside the If/End If then it did not work.
>Me.Label1.Caption = i
>
>Private Sub CommandButton1_Click()
>Dim i As Long
>
>For i = 1 To 100000
> Me.Label1.Caption = i
> If i Mod 1000 = 0 Then
> Me.Repaint
> End If
>Next i
>
>End Sub
>
>
>The following code did NOT work and I have no idea why.
>
>Private Sub CommandButton2_Click()
>Dim i As Long
>
>For i = 1 To 100000
> If i Mod 1000 = 0 Then
> Me.Label1.Caption = i
> Me.Repaint
> End If
>Next i
>
>End Sub