Contar colores de celdas excel 2003

Tengo esta macro para contar las celdas que tengan un mismo color.

Function ContarColorFondo(rngCeldaColor As Range, rngRangoAContar As Range) As Long
Dim rngCelda As Range
For Each rngCelda In rngRangoAContar
If rngCelda.Interior.ColorIndex = rngCeldaColor.Cells(1, 1).Interior.ColorIndex Then ContarColorFondo = ContarColorFondo + 1
Next rngCelda
Set rngCelda = Nothing
End Function

La formula para ejecutarla es la siguiente:

=CONTARCOLORFONDO(D2;F4:L14)

Y ahora mi problema. Cada vez que cambio una celda de color no me la cuenta, tengo que situarme sobre la formula y pulsar F2 + enter, para que se actualice.

Como se puede hacer para que cada vez que cambie una celda de color la cuenta automáticamente.

1 respuesta

Respuesta
1

incluye en tu Function la línea

Application. Volatile

Esto no conseguirá 100% que actualice tu función, pero la teoría dice que cada vez que haya un 'refresco' en tu hoja se recalcule la función (esto es, presionando F9); esta actualización también actuaría si cambia algo de alguna celda, como indicas en tu cuestión...

Copiando la ayuda de microsoft: "Marca una función definida por el usuario como volátil. Una función volátil se debe actualizar siempre que se efectúe un cálculo en cualquier celda de la hoja de cálculo. Una función no volátil se actualiza sólo cuando cambian las variables de entrada. Este método no tiene efecto si no está contenido en una función definida por el usuario empleada para calcular una celda de hoja de cálculo."

Slds

P.D.: Si te fué útil la información, por favor, no olvides Valorar y cerrar la pregunta

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas