View Single Post
  #7   Report Post  
Posted to microsoft.public.excel.programming
Héctor Miguel Héctor Miguel is offline
external usenet poster
 
Posts: 434
Default How could I make the contents of a Cell "Flash" like a warning

hi, Ranjit !

is it possible to use the below code to my user form 'Label'
and it should blink only for 1 minute and 5 seconds


you could try with smething like this code (when the userform is showed/activated/initialized/...)
note: while code is looping... code is looping (other code and actions step into stand-by mode)...

Private Sub UserForm_Activate()
Dim ShowTime As Single
ShowTime = Timer + 10
Do While ShowTime Timer
If (ShowTime - Timer) Mod 2 = 0 Then
Label1.BackColor = QBColor(4)
Label1.ForeColor = QBColor(14)
Else
Label1.BackColor = QBColor(14)
Label1.ForeColor = QBColor(4)
End If
Me.Repaint
Loop
Label1.BackColor = &H8000000F
Label1.ForeColor = &H80000012
End Sub

hth,
hector.

__ OP __
there is a wise-tricky procedure (posted by KL in spanish ng sometime ago)...
(and with minor changes based on Thomas Jansen -1999- post)...
that lets you to preserve the undo-levels, and you might want to give it a try...

if any doudbts (or further information)... would you please comment ?
hth,
hector.

assuming a cell es (B1) and you need it to flash if its value is greater than 5

1) select B1... (menu) format / conditional format...
(formula): =(b15)*(mod(second(now()),2)=0)
(format): apply formats as needed/wished/...

2) copy/paste the following code-lines:
===
a) in a general code module:
===
Option Private Module
Public Sequence As Date
Sub StartBlinking()
Sequence = Now + TimeSerial(0, 0, 1)
Worksheets(1).Range("b1").Calculate ' modify/adapt/... worksheets index/name as appropriate
Application.OnTime Sequence, "StartBlinking"
End Sub
Sub StopBlinking()
On Error Resume Next
Application.OnTime Sequence, "StartBlinking", Schedule:=False
End Sub
===
b) in ThisWorkbook code module:
===
Private Sub Workbook_Open()
StartBlinking
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
StopBlinking
End Sub