[Hola
Hay al menos dos formas:
- Usar Application. Ontime
- Usar la funcion "Sleep" de la API de Windows
Yo prefiero la segunda ya que es más "estable" y no afecta otros libros como puede ocurrir con la primera.
Por cierto, para que sea automático hay que usar el evento "Change" de la hoja. Pega esto en el módulo de la hoja en la que deseas el efecto:
Option Explicit
#If VBA7 Then
Private Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As LongPtr)
#Else
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
#End If
Private Sub Worksheet_Change(ByVal Target As Range)
Dim x As Integer
If Target.Address = "$B$2" Or Target.Address = "$C$2" Then
For x = 1 To 25
Target.Interior.ColorIndex = x
DoEvents
Sleep 300
Next x
Target.Interior.ColorIndex = 0
End If
End Sub
En el ejemplo uso 25 colores y cada parpadeo dura 300 mili segundos (1 segundo = 1000 mili segundos), ya tú ajústalo al tiempo y colores que prefieras.
Saludos]
Abraham Valencia