¿Puedo usar el color de fondo de una celda de Excel como condición en una fórmula?

1

Como digo en el título, ¿puedo usar el color de fondo o el formato de una celda de Excel como condición en una fórmula?

Por ejemplo: tengo una cuadrícula de números y nombres que selecciono a mano si quiero que la celda tenga el formato "rojo" o "verde". Y me gustaría tener un contador de cuántas celdas "verdes" y "rojas" tengo.

¿Es posible? ¿Puedes pensar otra manera de lograr algo similar?

Roboritox
fuente
2
Respuesta corta: si.
DavidPostill
1
¿Qué define el color de fondo (lo que hace que algunas celdas sean rojas, otras verdes)?
fixer1234
No quieres preguntar cómo ¿¿para hacer esto??
Twisty Impersonator

Respuestas:

1

Sí, puedes usar los colores de fondo de la celda en la fórmula.

Ahora, estoy seleccionando el siguiente "Cómo formatear celdas usando fórmula" .

Dado que no ha escrito y condiciones específicas para Formatear en ROJO & amp; VERDE de modo que me gustaría mostrarle cómo llenar las celdas o el rango de celdas con color, según sus datos o según el valor de otras celdas.

=OR(A2="NY",A2="Moscow",A2="New Delhi")

=AND(A1>1000,B1<500)

=AND(A2>NOW(),A2<=(NOW()+20))

=If(and(A2>=100, A2<=500))

NÓTESE BIEN: En los ejemplos anteriores, he usado la columna A. Estos valores se pueden probar para dar formato a otras columnas pero, en ese caso, primero debe seleccionar las dos o todas las columnas y luego aplicar la fórmula.

Ahora, me gustaría resolver la otra parte que "cómo configurar el contador de color".

Puede contar las celdas en función de su color de fondo utilizando el siguiente código VBA escrito.

 Function CountByColour(rColor As Range, rRange As Range, Optional SUM As Boolean)

 Dim rCell As Range
 Dim lCol As Long
 Dim vResult

  lCol = rColor.Interior.ColorIndex

   If SUM = True Then

    For Each rCell In rRange

     If rCell.Interior.ColorIndex = lCol Then
vResult = WorksheetFunction.SUM(rCell, vResult)
   End If

   Next rCell

Else

  For Each rCell In rRange

   If rCell.Interior.ColorIndex = lCol Then
vResult = 1 + vResult
   End If

 Next rCell

 End If

 CountByColour = vResult        
 End Function

NÓTESE BIEN: Copiar & amp; Pegue este código como MÓDULO usando el Editor de VBA y, escriba Fórmula como esta para usar la Función.

=CountByColour(A2,B2:J6,FALSE), donde A2 es celda de muestra y B2: J6 es el rango donde se debe contar el color como A2.

Nota, Este código fue probado por mí antes de que lo haya publicado aquí.

Espero que esto te ayude.

Rajesh S
fuente
0

Para responder a su pregunta como está publicada: NO.

Si formatea manualmente el color de relleno de la celda, entonces necesitará VBA para evaluar el relleno de la celda como una entrada para una fórmula. Eso requerirá programación, no solo escribir una fórmula de celda de Excel.

Si usa el formato condicional para establecer un color de relleno de celda, entonces SÍ, puede usar la misma lógica que en la regla de formato condicional para procesar aún más las celdas para sumar o contar. Mira en Sumifs () y Countifs ().

teylyn
fuente