Hola,
Hice una macro que cuando los valores
de un rango determinado fuera <0, el valor se mostrara en rojo
y en intermitente, esto lo consegui, pero el problema lo tengo al intertar
eliminar el parpadeo que se produce en toda la hoja.
A continuación detallo lo que he hecho:
1) Crear una formula denominada Timer
=ISEVEN(SEGUNDO(AHORA()))
2) Crear Formato condional
=Timer
3) En ThisWorkbook he puesto el codigo:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
DetenerParpadeo
End Sub
Private Sub Workbook_Open()
IniciarParpadeo
End Sub
4) En modulo he puesto el codigo
Dim dtSiguiente As Date
Private Sub Worksheet_Calculate()
Call IniciarParpadeo
End Sub
Sub IniciarParpadeo()
Dim Fila As Long
Dim TotalFilas As Long
dtSiguiente = Now + TimeValue("00:00:01")
Application.ScreenUpdating = True
For Fila = 10 To TotalFilas
If (Cells(Fila, 4) < 0) Then
Application.OnTime dtSiguiente, "IniciarParpadeo"
End If
Next Fila
End Sub
Sub DetenerParpadeo()
Application.OnTime dtSiguiente, "IniciarParpadeo", schedule:=False
End Sub
El resultado es que cuando ejecuto la macro iniciar parpadeo los valores
parpadean en rojo pero el parpadeo de toda la hoja es insufible.
Aprovecho para preguntar que diferencia hay entre ThisWorkbook y Modulo
podriamos decir que ThisWorkbook es la clase principal.
Gracias por todo
Leer las respuestas