Userform blinking label

E

Ed

I have a userform with two labels and one button. I
would like to alternate the label backcolors between red
and white. ie label1 backcolor is white, label2 red

pause

label1 backcolor is red, label2 white and so forth.

Code in standard modual: (Adapted from an old post)

Blink is called from buttons click event. Code works if I
step through but does not work if breaks are removed. I'm
stumped.

TIA for any assistance

Ed

Option Explicit

Private Declare Function GetComputerName Lib "kernel32" _
Alias "GetComputerNameA" (ByVal lbbuffer As String, _
nsize As Long) As Long
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As
Long)

Public Sub Blink()
Dim mytime As String
Dim i As Long

For i = 1 To 50

' set one color
UserForm1.Label1.BackColor = &HFFFFFF
UserForm1.Label2.BackColor = &HFF&
Call Sleep(60)

UserForm1.Label1.BackColor = &HFF&
UserForm1.Label2.BackColor = &HFFFFFF
Call Sleep(60)
Next i

End Sub
 
J

John Green

Ed,

Place the following statement before each call of Sleep.

DoEvents

This releases control to the operating system to update the screen.

You can also use

UserForm1.RePaint

John Green
 
E

Ed

Thank you John,

Works like a charm.

Ed
-----Original Message-----
Ed,

Place the following statement before each call of Sleep.

DoEvents

This releases control to the operating system to update the screen.

You can also use

UserForm1.RePaint

John Green





.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top