Actualizar conteo de cantidad de casillas en color

Tengo una columna de casillas en varios colores hice una función para contarlas por color pero si se cambia una casilla a otro color no me actualiza el conteo de dicho color, hay alguna forma de que se haga en automático, le escribo la función que utilice. Ej.=ContarPorColor(C2:C10;C2) y me pone la cantidad de casillas que tiene el color que le indico en un rango estipulado.

Function ContarPorColor(rango_datos As Range, condicion_color As Range) As Long

Dim datox As Range
Dim colorx As Long
colorx = condicion_color.Interior.ColorIndex
For Each datox In rango_datos
If datox.Interior.ColorIndex = colorx Then
ContarPorColor = ContarPorColor + 1
End If
Next datox
End Function

1 respuesta

Respuesta

Cuando cambias el color, excel no lo detecta como un cambio (no es como si pones un 1 en una casilla). Entonces, no puedes realizar una macro asociada a un evento como worksheet. Change o similar.

Si la asociáramos al evento selection_change, el problema es que primero seleccionas la celda y luego la cambias de color, por tanto siempre irás un cáculo por detrás a no ser que selecciones una celda al finalizar los cambios

Si solamente tienes una celda con la fórmula, lo mejor es seleccionar la fórmula en la barra de fórmulas y Enter

Si tienes varias, hacer una macro con la siguiente instruccion:

Worksheets("Hoja1"). Range("a1:a10"). Calculate

En el caso que tuvieras las fórmulas en la Hoja1 y rango A1:A10. Si el rango es disperso puedes poner solo:

Worksheets("Hoja1"). Calculate

Para ejecutar la macro puedes incorporar un botón a la hoja o crear un atajo de teclado como por ejemplo CTRL+MAYUSC+B

Es todo lo que se puede hacer

¿

¿Podrías decir si te ha sido útil la respuesta y valorarla?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas