Flashing cells

  • Thread starter Thread starter MAX
  • Start date Start date
M

MAX

Will you please tell me what's wrong with this code?

Option Explicit
Dim nextSecond

Sub startFlashing()
flashCell
End Sub

Sub stopFlashing()
On Error Resume Next
Application.OnTime nextSecond, "flashCell", , False
End Sub

Sub flashCell()
nextSecond = Now + TimeValue("00:00:01")
Application.OnTime nextSecond, "flashCell"

With Sheets("Serie A")
If .Range("AN6").Interior.ColorIndex = 3 Then
.Range("AN6").Interior.ColorIndex = 41
.Range("AN6").Value = "Champ"


ElseIf .Range("AN6").Interior.ColorIndex = 41 Then
.Range("AN6").Interior.ColorIndex = 3
.Range("AN6").Value = "Champ"

End If

If .Range("AW6").Interior.ColorIndex = 3 Then
.Range("AW6").Interior.ColorIndex = 41



ElseIf .Range("AW6").Interior.ColorIndex = 41 Then
.Range("AW6").Interior.ColorIndex = 3


With Sheets("Serie B")
If .Range("AN6").Interior.ColorIndex = 3 Then
.Range("AN6").Interior.ColorIndex = 41
.Range("AN6").Value = "Champ"


ElseIf .Range("AN6").Interior.ColorIndex = 41 Then
.Range("AN6").Interior.ColorIndex = 3
.Range("AN6").Value = "Champ"

End If

If .Range("AW6").Interior.ColorIndex = 3 Then
.Range("AW6").Interior.ColorIndex = 41



ElseIf .Range("AW6").Interior.ColorIndex = 41 Then
.Range("AW6").Interior.ColorIndex = 3
End If
End With
End Sub
 
It tries to make worksheet cells flash.

Seriously, why do you think something is wrong with it? Do you get error
messages or unexpected behavior? If so what?

Best wishes Harald
 
This code is giving me Block If without End If

Harald Staff said:
It tries to make worksheet cells flash.

Seriously, why do you think something is wrong with it? Do you get error
messages or unexpected behavior? If so what?

Best wishes Harald
 
Because your'e using ElseIf, both statements (interiorColor=3 & 41) are
evaluated within each second that's why it's not noticable the changes, use
instead Else as follows:

With Sheets("Serie A")
If .Range("AN6").Interior.ColorIndex = 3 Then
.Range("AN6").Interior.ColorIndex = 41
.Range("AN6").Value = "Champ"
Else
.Range("AN6").Interior.ColorIndex = 3
.Range("AN6").Value = "Champ"
End If
End With
 

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

Similar Threads

Code error 5
Adding code 1
Cells flashing 2
Adding code 5
Code help 6
Arrange code 3
Run Error while protected 1
Code arrangement 3

Back
Top