
Tengo una hoja de cálculo que utiliza el servidor RTD para actualizar los precios de las acciones en tiempo real.
Tengo un filtro aplicado a la hoja de cálculo y me gustaría volver a aplicarlo automáticamente.
Encontré una solución para volver a aplicar el filtro cada vez que se actualizan los datos, pero no parece funcionar con los datos actualizados por el servicio RTD.
Private Sub Worksheet_Change(ByVal Target As Range)
ActiveSheet.AutoFilter.ApplyFilter
End Sub
Entonces me preguntaba si es posible volver a aplicar el filtro cada 5 minutos.
Hay una solución a este problema en el siguiente enlace, pero no entiendo muy bien cómo hacerlo.
Respuesta1
Poner juntos su enlace y el enlace por gns100, nos obtiene la siguiente macro VBA. Llámelo con el nombre que desee y ejecútelo una vez para iniciar el ciclo del temporizador.
Public Sub EventMacro()
ActiveSheet.ShowAllData '<- keeps filter alive but shows all data
ActiveSheet.AutoFilter.ApplyFilter '<- apply the filter
alertTime = Now + TimeValue("00:05:00") '<- time = now + 5 minutes
Application.OnTime alertTime, "EventMacro" '<- set timer
End Sub
(No he probado esta macro).