color de celda con formato condicional

2 envíos / 0 nuevos
Último envío
DudaPorEmail
Imagen de DudaPorEmail
Offline
última acción: Hace 6 meses 1 semana
Nivel 1 - 200 puntos
alta: 15/10/2013 - 07:56
Puntos: 638
color de celda con formato condicional

Resulta q tengo un rango de celdas que al cumplir cierta condicion me pone la celda de color amarillo, a partir de esos colores uso la macro para saber la cantidad de amarillos q hay en ese rango.

La macro asi como te lo cuento no me funciona, pero cuando pongo la misma macro en un rango sin condicion ( osea q los colores los pongo yo al azar) si me funciona.

A mi entender es como q el rango q tiene la condicion, me llena la celda de color, pero es como q la macro no lo detecta, a que se debe eso?

 

Function CONTAR_COLOR(celdaRef As Range, rango As Range)
      Dim resultado
      Dim celda As Range
      For Each celda In rango
         If celda.Interior.Color = celdaRef.Interior.Color Then
             resultado = resultado + 1
         End If
      Next celda
      CONTAR_COLOR = resultado

End Function

Etiquetas: 

pacomegia
Imagen de pacomegia
Offline
última acción: Hace 6 horas 26 mins
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntosadministrador
alta: 27/12/2006 - 23:26
Puntos: 7610
Si el color lo genera un
Si el color lo genera un formato condicional, entonces no puedes leer ese color con Celda.Interior.Color
.Interior.Color es el color que se establece a mano.
 
A partir de Excel 2010 puedes utilizar DisplayFormat:
tuCelda.DisplayFormat.Interior.Color
 
En versiones 2007 o anteriores es mucho más complicado obtener el color que se muestra.
aquí tienes unos ejemplos para versinoes antiguas:
 
 

 

Data Tools Suite
datos y tablas con Excel