9 de septiembre de 2008

Formato condicional avanzado III

Continúa de la nota anterior.

Hasta ahora, solo hemos utilizado la opción "Valor de la celda" de la primera lista desplegable del cuadro Formato condicional. Como recordarán, la segunda opción de esta lista se llama Fórmula. Es con esta opción, con la que se pueden establecer condiciones de formato mucho más complejas y por lo tanto más útiles, ya que podremos valernos de cualquier función Excel integrada y/o referirnos a cualquier otra celda del libro.

Supongamos que tenemos una columna con fechas, y queremos aplicar formato a las que tengan una semana o menos de antigüedad. Seleccionamos entonces el rango, por decir A2:A150, damos Formato - Formato condicional... y seleccionamos la opción Fórmula:

En la sección Fórmula: escribimos:

=A2>(HOY()-7)

Cualquier fórmula que ingresemos en esta sección deberá ser, en realidad, una expresión lógica; es decir, una expresión cuyos únicos resultados posibles sean o VERDADERO o FALSO. En nuestro caso, si en la celda A2 tenemos la fecha del día de ayer, la fórmula devolverá VERDADERO. Y si tenemos una fecha de hace más de un mes, devolverá FALSO. Cada vez que el resultado de la expresión sea VERDADERO, Excel aplicará el formato que hayamos especificado.

Observemos ahora que la referencia que hacemos a la celda A2 es una referencia relativa. Al hacerlo, estamos forzando a Excel a ajustar las referencias al resto de las celdas (recordemos que hemos seleccionado un rango: A2:A150), tal y como sucede cuando copiamos una fórmula normalmente. De esta forma, si revisamos las condiciones de cada celda, veremos que son:

=A2>(HOY()-7)
=A3>(HOY()-7)
=A4>(HOY()-7)
...
=A150>(HOY()-7)

Por el contrario, si el caso fuera comparar todas las celdas contra la fecha de la celda B2, entonces utilizaríamos una referencia absoluta para la celda B2 (y relativa para A2):

=A2>$B$2

De esta forma, Excel ajustará las condiciones como sigue:

=A2>$B$2
=A3>$B$2
=A4>$B$2
...
=A150>$B$2

Para cambiar el tipo de referencia, se puede usar F4 o escribir directamente los signos $ en la fórmula. Téngase presente que la celda utilizada como primer argumento (A2) debe ser la celda activa. De lo contrario, Excel podría ajustar erróneamente las referencias.

Una vez comprendido lo anterior, las condiciones que pueden elaborarse para formatos condicionales solo están limitadas por la habilidad del usuario para elaborar expresiones lógicas. Algunos ejemplos:

=A2=MAX($A$2:$A$101). Formatea el valor máximo del rango.

=ESERROR(B2). Esta condición aplica formato a las celdas que contengan resultados de error en el rango. Puede utilizarse para ocultar dichos resultados, aplicando color de fuente blanco.

=CONTAR.SI($A$2:$A$100,A2)>1. Formatea valores duplicados en el rango. Para encontrar los no duplicados, cambiamos el signo > por =.

=ESTEXTO(A2). Señala los valores no numéricos en el rango.

=RESIDUO(FILA(),2). Formatea las filas del rango alternadamente. Por ejemplo, para colorear las filas impares.

=A1>PROMEDIO($A$2:$A$17). Muestra los valores numéricos que están por arriba del promedio del rango.

=RESIDUO(SUBTOTALES(3,$A$1:$A2),2). Formatea alternadamente las filas de un rango filtrado. Nótese la referencia mixta a la celda A2: columna absoluta, fila relativa.

Entre muchos otros. Toca al lector definir los formatos a aplicar.

Link.

2 comentarios:

  1. Excelente !!

    Muchas gracias, me fue de gran ayuda.

    ResponderEliminar
  2. Hola, no me funciona la formula, me pinta toda la fila seleccionada. Como rango marco la fila, como condicion "=HOY()" Y pinta todo... Tenés idea que podría estar fallando?

    Desde ya te agradezco!
    Guillermo

    ResponderEliminar

Creative Commons License
Esta obra está bajo una licencia de Creative Commons.
Excel, Excel 2003, Excel 2007 y el logo XL son marcas registradas de Microsoft Corporation.