Pausar un evento On Time al cambiar a otro excel abierto

Tengo un excel compartido que ejecuta una macro en Thisworbook que cambia el color de la fuente de un rango a blanco (para que no se vean los numeros) cada 5 minutos, porque el usuario cuando lo desea mediante un botón (y otra macro) los muestra (vuelve la fuente a negro). La macro en Thisworkbook es la siguiente:

Private Sub Workbook_Open()

Application.OnTime Now + TimeValue("00:04:59"), "AppTimer"

End Sub 

Y "AppTimer" en el modulo es:

Sub AppTimer()
'sirve para poner en blanco la fuente de los precios
dTime = Now + TimeValue("00:04:59")
Application.OnTime dTime, "AppTimer"

Range("E3:E39,J3:J39,O3:O39").Select
Range("O3").Activate
With Selection.Font
.ThemeColor = xlThemeColorDark1
.TintAndShade = 0
End With
Range("A1").Select
End Sub

El problema es que cuando el usuario abre otro excel y los dos están abiertos, la macro se ejecuta y le pone la fuente en blanco a los rangos ("E3:E39, J3:J39, O3:O39") del otro excel cuando esta activado.

La idea seria que este temporizador se pausase cuando se activase el otro libro y se reiniciase al volver al que tiene la macro. No se si se puede. O eso, u otra cosa que no estropease al otro excel que el usuario abra.(El excel que tiene la macro tiene que estar casi siempre abierto para trabajar periódicamente en él)

1 respuesta

Respuesta
1

H o  l a:

Te anexo la macro actualizada, la macro se va a seguir ejecutando, pero solamente realizará los cambios en el libro que ejecutó la macro.

Sub AppTimer()
    'sirve para poner en blanco la fuente de los precios
    Set l1 = ThisWorkbook
    Set h1 = l1.ActiveSheet
    dTime = Now + TimeValue("00:04:59")
    Application.OnTime dTime, "AppTimer"
    With h1.Range("E3:E39,J3:J39,O3:O39").Font
        .ThemeColor = xlThemeColorDark1
        .TintAndShade = 0
    End With
End Sub

¡Gracias! 

De nuevo perfecto. Funciona estupendamente. Te estoy enormemente agradecido  por lo mucho que me estás ayudando. Gracias y un saludo afectuoso.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas