Tengo este archivo y puse la funcion para saber cuantas celdas estan de color pero al momento de filtrar por mes no se actualiza el total de celdas por color ayuda
Adjunto | Tamaño |
---|---|
libro1.xlsm | 13.87 KB |
//-->
Tengo este archivo y puse la funcion para saber cuantas celdas estan de color pero al momento de filtrar por mes no se actualiza el total de celdas por color ayuda
Adjunto | Tamaño |
---|---|
libro1.xlsm | 13.87 KB |
Hasta donde yo sé, no existe un evento que se lance al cambiar el color de una celda.
Las soluciones son de compromiso y no buenas.
Una de las soluciones de compromiso es que la primera línea de tu rutina (después de los DIM) sea:
Application.volatile
De esta manera lo que consigues es que la función se ejecute cada vez que se recalcula la hoja. Así puedes cambiar los colores y justo antes de comprobar la suma, pulsa F9 (o cambia cualquier celda) y se recalculará tu UDF.
Otras maneras que he visto a lo largo del tiempo son peores que esta (por ejemplo tener un bucle infinito corriendo en segundo plano, y para eso tienes que ponerle tiempo de espera y Doevents en cada ciclo...). Esto impide que puedas ejecutar cualquier macro en la hoja (pues no pueden correr dos a la vez)
Un saludo
Usa este codigo haber si es lo que necesitas
Function ContarPorColor(ByRef Rango_Datos As Range, ByRef Condicion_Color As Range) As Long
Dim Datos As Range
Dim ColorX As Long
ColorX = Condicion_Color.Interior.ColorIndex
For Each datox In Rango_Datos
If Rows(datox.Row).EntireRow.Hidden = False Then
If datox.Interior.ColorIndex = ColorX Then
ContarPorColor = ContarPorColor + 1
End If
End If
Next
End Function
Un saludo
Espero te sirva
Un Saludo
Fernando