viernes, septiembre 01, 2006

Formato condicional en Excel – Facilitando la lectura de tablas.

En la nota de ayer sobre diagramas Gantt, mostraba como utilizar formato condicional para alternar los colores de las barras en el diagrama. Esta misma técnica se puede usar para facilitar la lectura de tablas "cargadas" de números.
Supongamos esta tabla de ventas por mes y sucursales:




Para facilitar la lectura, queremos poner un fondo gris fila de por medio. Queremos que la tabla se vea así



Por supuesto podemos hacer esto manualmente. Pero también podemos hacerlo con formato condicional. Seleccionamos el rango de datos de la tabla y luego abrimos el menú de formato condicional. En la ventanilla Condición 1, elegimos la opción "fórmula" y escribimos =RESIDUO(FILA(),2)


La función FILA() da como resultado el número de la fila donde se encuentra la celda. La función RESIDUO da como resultado el residuo o resto de la división entre número y el divisor. Así, por ejemplo, el residuo de dividir 3 por 2 da 1, que Excel interpreta como VERDADERO, y por lo tanto para la fila 3 la condición se cumple.

En nuestro ejemplo la primer fila con fondo gris es la segunda fila de datos. Esto se debe a que en nuestra tabla la primer fila de datos se encuentra en la fila 2, que es par.
Qué hacer si queremos que la primer fila de datos tenga un fondo gris? Cambiamos la fórmula a =RESIDUO(FILA(),2)-1 o =RESIDUO(FILA()-1,2)

Fórmulas equivalentes a estas son:
- para intervalos pares =FILA()=REDONDEA.PAR(FILA())
- para intervalos impares =FILA()=REDONDEA.IMPAR(FILA())

Supongamos ahora que queremos que cada tercer fila tenga un fondo gris. La fórmula que nos permite lograr esto es =NO(RESIDUO(FILA(),3)). La diferencia con la fórmula anterior es que combinamos la función NO en nuestra fórmula.




Si queremos un fondo gris cada 5 líneas, usamos el argumento "5" en lugar de "3"
=NO(RESIDUO(FILA(),5))

En términos generales podemos establecer:
- para intervalos pares usamos la fórmula =RESIDUO(FILA(),número par))
- para intervalos impares la fórmula =NO(RESIDUO(FILA(),número impar))


Categorías: Funciones&Formulas_, Varios_

Technorati Tags: ,

207 comentarios:

  1. Buenos días, soy Angel Mari.

    Mi problema es el siguiente.

    Quiero que, usando el formato condicional, cuendo una serie de celdas tomen los valores 13 o 14 o 17 se me pongan azules de trama; cuando obtenganotros valores distintos, 12 o 17 o 18, se pongan sus celdas con trama roja y cuando tomen los valores 15 0 16 se me pongan con trama verde.
    No consigo dar con la solución.
    Sería tan amable de resolverme el problema ... si tuviera solución.

    Le agradezco de antemano. Muchas gracias

    ResponderBorrar
  2. Hola Angel Mari,

    lo que tienes que hacer es usar la opción Fórmula en Formato Condicional. Alli usas la funcion =O. Por ejemplo para la primera condición la fórmula sería
    =O(A3=13;A3=14;A3=17)
    Fijate que las referencias a las celdas son relativas, es decir, sin el símbolo $.
    Puedes descargar un archivo con la solución, aquí.
    El 17 aparece en la primera y en la segunda condición, lo cual no es posible, así que lo he quitado de la segunda.

    ResponderBorrar
  3. Hola veo que conoces mucho de excel, quería saber si me puedes ayudar, necesito que una fila entera se ponga de color amarillo si en una celda ingreso un 1

    Si la celda a2 es = 1 entonces la fila debe ser amarilla.

    ResponderBorrar
  4. Hola Rodolfo
    si quieres que toda la fila se ponga de un color cuando cualquier celda de la columna A valga 1, debes usar en formato condicional la fórmula =$A1=1 (presta atención al símbolo $ delante e A). Antes de aplicar el formato condicional debes seleccionar todo el rango de las filas (pulsando el número de fila a la izquierda de la hoja).

    ResponderBorrar
  5. Hola, soy Carolina!!

    El caso que se me presenta es el siguiente:

    En la columna D debo poner fondo amarillo si en la columna A está el valor de 2, pero ademas debo ponerlo en amrillo si en la misma columna D el valor que aparece cumple una condición de ser mayor que 25.

    Espero pueda resolverse.

    Gracias...

    ResponderBorrar
  6. Hola Carolina, no termino de entender la consulta. SI es la misma columna, entonces es la columna A, no la D. Si te refieres a que en la misma fila en la columna A aparezca el valor 2 y en la celda de a columna D el valor sea mayor de 25, tienes usar la fórmula adecuada, por ejemplo:
    =Y(A9=2;C9>25)
    Esta fórmula la pones en la opción "Fórmula" del diálogo del formato condicional.

    ResponderBorrar
  7. Hola, muy buena pagina de excel, esta muy bien explicada y con las imagenes es una gran ayuda

    ResponderBorrar
  8. Hola Jorge;
    Gracias por tu ayuda.
    Tengo un problema con una hojas de excel con respecto al formato condicional.

    Tengo un libro (p.e. libro2) con hojas referenciadas (aprox. 400) a datos de celdas otro libro (p.e. libro1) .

    Mediante formato condicional, quisiera marcar las celdas del libro2 que están refrenciadas a celdas del libro 1 en donde no se alcanza cierto valor en el libro 1.

    Por ejemplo:

    La celda A1 del libro2 es igual a "libro1!A1/libro1!$B$4" cuyo valor de libro1!A1 es 8.

    La celda A2 del libro2 es igual a "libro1!A7/libro1!$B$4" cuyo valor de libro1!A7 es 12.

    Quiero marcar, mediante formato condicional, la celda A1 del libro 2 porque se cumple la siguiente condición: el valor de su numerador es menor de 10.

    He intentado ciertos métodos que has utilizado y no he conseguido nada.

    Muchas gracias por tu atención, y

    Un saludo.
    Javier
    javierm.prado@telefonica.net

    ResponderBorrar
  9. Hola Javier, lo mejor sería que me mandes un archivo con el problema. De todas maneras, para usar Formato Condicional con referencia a una celda en otra hoja, tienes que usar Nombres, como explico en esta nota

    ResponderBorrar
  10. Hola,
    Soy Javier de nuevo,
    Lo siento, pero ¿Cómo te puedo enviar un fichero de ejemplo?.

    ResponderBorrar
  11. Hola soy un muy asiduo visitante de tu estupendo blog. Ya hace tiempo de este post pero nomas comentarte de una modificacion que hice que en vez de que haga un cambio de color por cada fila esto es gris-blanco-gris-etc, el cambio fuera por cada vez que cambia el concepto, esto es, que si se tienen varios renglones de una misma sucursal (ej. que sucursal 1 este desde A2 a A5) no se haga el cambio hasta que cambie de sucursal.
    cada vez que hay cambio de sucursal se hace el cambio de color del renglon y asi poder leer por bloques de informacion.
    =MOD(SUM(IF(FREQUENCY($A$2:$A16,$A$2:$A16)>0,1)),2)

    ResponderBorrar
  12. hola

    serías tan amable de explicar la expresión propuesta en la entrada anterior

    =MOD(SUM(IF(FREQUENCY($A$2:$A16,$A$2:$A16)>0,1)),2)

    no veo la forma de conseguirla, y me parece muy útil

    muchas gracias por el blog está cojonudo

    Juan

    ResponderBorrar
  13. Hola Jorge
    se me plantea el siguiente problema.

    Quiero que en la celda que el contenido de la celda F4 cambie de color según el valor de F23. Si en F23 aparece la palabra "Red", f4 debe ponerse en rojo, si aparece "Yellow", amarillo.... y asi.

    Cómo podría hacerlo? No sé qué fórmula usar. Gracias

    ResponderBorrar
  14. Hola
    las fórmulas que usamos en formato condicional deben dar como resultado VERDADERO o FALSO (o 1 o 0). En tu caso sería =F23="Red" y =F23="Yellow", etc.
    Esto significa que puedes evaluar el resultado en la celda F23 y cambiar sólo a un color. Hasta la versión 2003 de Excel (incluida) solo tienes la posibilidad de establecer 3 condiciones.
    Una solución posible es usar el complemento que menciono en la nota sobre formato condicional con más de 3 condiciones.
    Otra posiblidad es pasar a Excel2007.

    ResponderBorrar
  15. Estimado Jorge,

    Soy nuevo en sus blogs, y me parecen muy interesantes y útiles. de hecho estoy utilizando sus formulas en las hojas que ya tengo hechas para mejorarlas (cosa no muy dificil, ya que todas utilizan formulas sencillas). viendo esta propuesta que realiza, veo que hay que definir el rango que va a utilizar el formato condicional, pero: cómo hacer que el rango sea dinamico y que persista si se añaden más filas en la hoja? se debería utilizar nombres? gracias de antemano.

    ResponderBorrar
  16. No puedes definir un rango dinámico, como en el caso de las tablas dinámicas. Pero lo que puedes hacer es agregar filas insertándolas antes de la última del rango definido de antemano. En castellano: digamos que definimos el formato condicional para las filas 1:20. Seleccionamos la fila 19, arrastramos el mouse la cantidad de filas que querramos agregar, pulsamos el botón derecho del mouse y elegimos Insertar. Las nuevas filas "heredarán" el formato de las anteriores.

    ResponderBorrar
  17. gracias por su pronta respuesta.

    ResponderBorrar
  18. SABES, LO QUE PUBLICASTE ES JUSTO LO QUE ESTABA BUSCANDO PERO NO ME FUNCIONA LA FORMULA CONDICIONAL, NO ENTIENDO PORQUE, ME INDICA UN ERROR DE FORMULA.

    GUILLEMO GONZALEZ

    P.D. DISCULPA SI TE MOLESTA QUE HAYA ESCRITO EN MAYUSCULAS. NO LO INTERPRETO COMO ESCLAMACIÓN SINO URGENCIA.

    ResponderBorrar
  19. Mandame el archivo para que pueda fijarme dónde está el problema.

    ResponderBorrar
  20. Te agradezco el interes y aclaro que no es un archivo en si, lo intenté con un libro excel en blanco y no funcionó, especifico EXCEL 2003. Cuando funcione lo formatearé muchos archivos para que alterne los colores y resulte mas facil la lectura.
    Cuando le doy aceptar el formato condicional luego de haber pegado la fórmula me salta la ventanita del error posteriormente me señala resaltado ",2"
    Gracias por tu ayuda

    ResponderBorrar
  21. Hola Jorge, muy útil tu página, el único problema que he tenido con el formato condicional es que en los bordes no me aparecen los espesores más gruesos que sí puedo agregar cuando veo el formato normal de una celda.

    Esto lo quiero hacer para resaltar los bordes de algunas filas bajo ciertas condiciones. Tengo excell 2003.

    Gracias
    Saludos

    ResponderBorrar
  22. Así es, sólo se pueden seleccionar los estilos, pero no los grosores de la línea. No conozco ninguna manera de superar este problema.

    ResponderBorrar
  23. Estimado Jorge:

    Encuentro estupenda tu página, me ha sacado de muchos apuros. tengo una duda con los formatos condicionales. Quiero aplicarlo a múltiples filas para que cuando tenga un valor cero en una de sus celdas me modifique el formato de solo la fila en que se encuentra esa celda, cuando escribo la siguiente fórmula =$A1=0, todas las filas seleccionadas cambian de color. Muchas gracias por tu ayuda

    ResponderBorrar
  24. Hola Jorge, soy Carolina, he leido muchas veces tu blog y me ayudó muchas veces en mi trabajo. Ahora se me presenta un problema con el formato condicional. Te explico
    Tengo en columna B NOmbre y apellido, en C Profesión y en D fecha de exámen psicofisico y en E Cambio de fecha si coincide entre el 10/02/2008 al 15/03/2008.
    Tengo que Destacar en fondo color azul los Apellidos y Nombres de enfermeros y camilleros que deban modificar su fecha de examen psicofísico.
    No se que formula utilizar para resaltar una celda que no entra en ninguna función. Espero que me entiendas y que me puedas ayudar, Gracias

    ResponderBorrar
  25. Lo mas cooveniente sería poner la fecha de comienzo y fin del intervalo (10/02/200/ - 15/02/2008) en dos celdas, digamos A1 y A2.
    Después sencillamente usas formato condicional con la opción Valor de la celda entre(la opción por defecto) y en las ventanillas pones A1 y A2.

    ResponderBorrar
  26. Me pareció muy interesante el formato para resaltar líneas alternas, así que lo probé y funcionó todo bien, pero observé que al filtrar la hoja (con autofiltro) por alguna columna, la alternancia de fondo se perdía y quedaba bastante mal.
    Le dí unas vueltas, y he encontrado una solución para ello que quizá a alguno le pueda servir así que la comento: se trata de crear una columna oculta adicional donde se tengan los números de cada fila, es decir, todas las celdas con fórmula =FILA()
    Y luego en el formato condicional poner la siguiente fórmula
    =RESIDUO(SUBTOTALES($A2:$A30);2)=0
    donde se supone que la columna A es la oculta con fórmulas de FILA y que la tabla va de filas 2 a 30.
    Esta fórmula se pone en cualquiera de las celdas de la 1ª fila de la tabla (fila 2) y luego se copia en toda la tabla.
    Las celdas en columna A fuera de la tabla deben estar vacías.
    Segur que a Jorge se le ocurre algo para dejarlo mejor.

    ResponderBorrar
  27. Faltaba un 2 en la fórmula que puse. Debe ser:
    =RESIDUO(SUBTOTALES(2;$A2:$A30);2)=0
    Y tampoco hace falta crear la columna oculta con fórmulas FILA(), sino que vale usar una columna ya existente en la tabla siempre que tenga valores numéricos siempre rellenos (un índice por ejemplo).
    Debe cambiarse $A por la letra de la columna que se use.

    ResponderBorrar
  28. Hola, tengo un problemilla, necesito modificar el formato de las celdas de una hoja que no esten incluidas en ninguna de las formulas de esa misma hoja.
    ¿como lo podría hacer?

    Muchas Gracias.
    Alan

    ResponderBorrar
  29. Es decir, señalar todas las celdas de una hoja que no sean "precedentes" de alguna otra celda. Esto incluiría también las celdas que contienen las fórmulas?
    No puedes hacerlo con formato condicional, ya que o hay ninguna función que calcule si una celda es precendente o no de otra. Se podría hacer con una macro.

    ResponderBorrar
  30. hola soy ernesto tengo una consulta quiero crear una condicion que cuando sea "aprovado" me de un color el que quiera ejemplo azul y si es "reprobado" me de Rojo la condicion la hago asi ..: =si(a5>6.25,"aprovado","reprovado") pero quiero que me los envie en colorres los resultados Ayudenme por favor

    ResponderBorrar
  31. Las fórmulas en FOrmatoCondicional deben dar como resultado VERDADERO o FALSO, no un valor numérico. En tu caso tendrias que definir dos condiciones, una para los aprobados y otra para los reprobados. La fórmula para la primer condición sería
    =A5>=6.25
    y para los reprobados
    =A5<6.25

    ResponderBorrar
  32. Hola, me llamo Marcos y soy muy asiduo a este blog:

    Creo que se como conseguir cambiar los colores en funcion de los cambios que se producen en la columna tomada como referencia. Partiendo de que en dicha columna haya valores numéricos ordenados.

    1º - Uso Jerarquía en la columna "B" sobre la columna A que contiene los datos tal que =JERARQUIA(A1;$A$1:$A$100;1) para crear un orden

    2º Uso un condicional en la columna C para eliminar los huecos generados empezando en la celda C2 =SI(B2=B1;C1;C1+1)

    3º En la columna D uso la funcion =ES.PAR(C1)*1 para obtener 1 ó 0 en función de cada cambio

    4º Por último genero el formato condicional con las formulas tal que =$A1=1 con un color y =$A1=0 para otro.

    Espero que os haya servido.

    Aprovecho para agradecerle a Jorge su Blog, me ha hecho evolucionar mucho en mi trabajo (Contabilidad), haciendo cosas que antes me resultaban impensables.

    ResponderBorrar
  33. Hola, mi nombre es felipe y necesito saber si existe alguna forma de resaltar la columna y fila asociadas a la celda en que se está parado. estoy trabajando con matrices grandes y quisiera seleccionar una celda en particular y para hacer referencia a los títulos de fila y de columna me guatía que se destacaran. El objetivo es que sea dinámico, se que puedo marcarlas manualmente, pero el tema es que quiero ir saltando de celda en celda y que se "sombree" por ejemplo la fila-columna asociada a la celda. Muchas gracias. Ojalá me puedas ayudar. Saludos.

    ResponderBorrar
  34. Felipe,
    fijate en el evento (macro) que aparece en esta nota

    ResponderBorrar
  35. Hola,
    si aperte de quere colorear las filas de blanco y gris con la formula =RESIDUO(FILA(),2)
    Necesito que una celda en particular se coloree de otro color, es decir en la línea de color gris que la celda C3 tenga color verde ¿cómo se hace?
    no logro impmentar dos formatos a parte del de residual.
    Muchas gracias

    ResponderBorrar
  36. Poniendo una segunda condición usando el botón Agregar.

    ResponderBorrar
  37. hola, necesito de su ayuda, deseo generar un reporte de asistencia el cual involucre tato el formato condicional y me diga una instruccion de retardo en caso de pasar despues de las 8:15 y en tiempo en caso de ser menor a este horario, como puedo hacer para validar que la fecha introducida se valide con esta condicion

    ResponderBorrar
  38. Por favor, fijate en el enlace en Contacto.

    ResponderBorrar
  39. Hola jorge necesito tu ayuda, quiero que la formula verifique si el numero es par o impar, y cuando esto suceda yo pueda poner una formula, es decir, si es par una formula, y si es impar una formula distina. Muchas gracias

    ResponderBorrar
  40. Necesitas una única fórmula condicional. Algo así commo

    =SI(ES.PAR(celda a evaluar);fórmula1;fórmula2)

    ResponderBorrar
  41. Víctor López27 enero, 2010 20:37

    Hola Jorge, soy usuario nuevo de este interesante blog que me ha sido de mucha utilidad en mis primeros pasos con excel 2007 y quisiera preguntarte qué fórmula o formato condicional podría utilizar para que, en función del día de la semana que figura en la columna A (referidos como L, M, X, J, V, S, D), aparezca automáticamente un texto concreto en otra celda de la misma fila. Por ejemplo, si en la celda A3 pongo una "L" me gustaría que en la celda C3 apareciera el texto "OME". ¿Es posible hacer esto? Un saludo y gracias de antemano

    ResponderBorrar
  42. Con BUSCARV, suponiendo que existe una tabla que conecta entre los valores de la columna A y los quedeben aparecer en la columna C.

    ResponderBorrar
  43. Hola Jorge
    Tengo Excel 2007. Me podrás ayudar a encontrar la forma de darle un color diferente a una fila dependiendo del valor que tenga una de las celdas que contiene. Ej. Si la celda G114 tiene el Texto "Presupuestado" quiero que el texto de toda esa fila sea amarillo, pero si el texto de G114 es "Reparado" que la fila sea verde.
    Muchas Gracias

    ResponderBorrar
  44. Creando dos reglas. Una con $G114="Presupuestado" y la segunda con $G114="Reparado".
    Fijate que ponemos el símbolo $ sólo delante de la G, para dejar la columna de referencia fija, mientras que la fila va cambiando. En caso que el gormato dependa exclusivamente del valor de la celda G114, tendrías que fijar tanto la columna como la fila ($G$114)

    ResponderBorrar
  45. Hola:
    Quiero usa un Formato Condicional en el cual cuando una celda este menor a 345 se ponga de color verde Toda la Fila y cuando sea mayor a 346 se ponga de color Rojo toda la Fila.

    Los Datos los tengo entre A4 y J4.

    Me podrias ayudar Por favor Gracias.....

    ResponderBorrar
  46. Hay que aplicar formato condicional a todo el rango, obviamente, con dos criterios. Después de seleccionar el rango estableces como criterio $A4<=345 y como segundo criterio $A4>345.

    ResponderBorrar
  47. Hola, esta super interesante tu blog realmente lo voy a guardar en mis favoritos y lo voy a pasar a mis amigos como referencia.

    Tengo una consulta,

    Tengo 8 filas diferentes con 6 columnas que estan de la la B16:H23

    En la celda E5, tengo un valor que puede estar entre 1 y infinito y cada una de las filas tiene un rango especifico asi

    1 - 2500
    2501 a 5000
    5001 a 7500
    7501 a 10000
    10001 a 12500
    12501 a 15000
    15001 a 17500
    17501 en adelante

    Lo que necesito es que si en la celda E5 pongo un valor "X" que esta dentro de alguno de estos rangos entonces toda la fila de ese rango se ponga de otro color.

    Adicionalmente si cambio el valor en E5 a "Y" entonces donde haya caido el valor me resalte la fila a el mismo color anterior, la idea es que se me resalte la fila completa donde cayo el rango, esto es para hacer un analisis sensibilizado.

    Por favor AYUDA!!

    ResponderBorrar
  48. Te sugiero enviarme el archivo por mail privado. Tu descripción me resulta poco clara.

    ResponderBorrar
  49. Hola mi nombre es Giselle. Agradezco en lo que me pueda ayudar!.
    Quiero realizar un formato condicional para el sig. caso:
    Tengo la venta real, el estimado de ventas y quiero que si el estimado esta por debajo en 50 de la venta real se me pongan los numeros en rojo y si estan 100 por arriba en azul (o cualquier otro color).
    Como puedo hacer esto?.

    Muchas gracias por todo!

    ResponderBorrar
  50. Giselle
    como no se que versión de Excel estás usando, puedo darte una indicación general. En formato condicional existe la alternativa de definir la regla con fórmulas. En tu caso necesitas dos fórmulas, una que evalue si el valor estimado esta por debajo de lo fijado (y le ponga un formato de acuerdo) y otra que evalue si está por encima.

    ResponderBorrar
  51. Buen día:

    Tengo una base de datos en excel, cada fila tiene un dato que relaciona la semana del año a la que pertenece la infromación depositda en cada fila (en la columna B, está el dato de la semana para cada fila).

    Quiero que con auto formato, coloque de color amarillo las filas en las que el dato corresponda a una semana par, y de azul las filas en la que el dato corresponda a una semana impar.

    como puedo hacer esto?

    ResponderBorrar
  52. Usando la fórmula =ESPAR($B2). Fijate que en la referencia de la fórmula aparece el símbolo $ delante de la coumna.

    ResponderBorrar
  53. Hola:

    Antes de nada agradecer toda la información y ayuda prestada en esta página.

    Quiero aportar el siguiente truco:

    Si quieres que cualquier fila de una hoja se ponga en un color determinado si una celda de dicha fila cumple una condición determinada se hace, por ejemplo:

    "Si queremos que cualquier fila se ponga toda en rosa cuando su celda A valga < 0" se seguiran los siguientes pasos:

    1.- Antes de aplicar el formato condicional debes seleccionar todo el rango de las filas (pulsando el número de fila a la izquierda de la hoja).

    2.- Elegimos "formato condicional"

    3.- Seleccionamos en condición 1 : "formula" y "=($A1<0)" y en formato elegimos una trama rosa.

    Ahora, cuando en una fila introduzcamos un valor < 0 en su primera celda (la A), automaticamente se pondra toda la fila en rosa.

    Esto pasara todas sus filas (se puede variar la condición o añadir más condiciones, pero hay que tener en cuenta el que la referencia debe ser absoluta en la columna y relativa en la celda si queremos que la condición sea sobre la celda A de la fila correspondiente).

    Ya se que el truco aparece a lo largo de la página, pero quiero agradecer el esfuerzo de todos los participantes poniendo resumido el truco con todos sus pasos detallados.

    ResponderBorrar
  54. Gracias por las buenas intenciones. Digamos sólo que no se trata de un truco. Formato COndicional, tema que ha sido tratado extensamente en este blog, es una de las funcionalidades más prácticas de Excel. Agreguemos que esta funcionalidad ha sido mejorada enormemente en Excel 2007/10.

    ResponderBorrar
  55. Hola Jorge: veo que ha solucionado muchísimos problemas en el excel 2007, yo no puedo solucionar esto: quiero que si una celda específica tiene un número (9 por ej.)en otra celda aparezca "distinguido". Esto como modo de cualificar la condición de los alumnos. Se puede?

    ResponderBorrar
  56. Emma,
    se hace con la función BUSCARV.
    Una observación: los comentarios deben estar relacionados con el contenido de la nota. Consultas como la tuya hay que dirigirlas a alguno de los foros de Excel que hay en la Internet.

    ResponderBorrar
  57. Muchas gracias por compartir tus conocimientos y ademas de eso muy buen blog, mi caso es el siguiente:

    Ya se como cambiar el color de toda una fila si en su columna A hay escrito algo.

    La duda es:

    ¿Como cambiar el color de toda una fila si en cualquier columna hay escrito algo?

    No quiero recurrir a los macros esta una gran duda en común, de antemano muchas gracias.

    ResponderBorrar
  58. Amigo me respondo yo mismo ya lo logre gracias a DIOS!

    Si quieren que no la fila completa si no por ejemplo desde la A hasta la H cambie de color o con bordes depende lo que eligan en formato cambie al escribir en cualquier celda desde la A hasta la H hagan lo siguiente:

    - Formato Condicional donde eligen Nueva Regla.
    - Abre una ventana y le dan "Utilizar una formula..." es la ultima opción.
    - En la parte donde va la formula colocan por ejemplo =O($A1:$H1)<>"" esto quiere decir que desde la celda A hasta la H si escriben algo toda la fila cambiara de formato.

    Ahora bien esto lo hara en la fila que hayan marcado previamente, para que lo haga en todas las filas de la hoja vayan a Formato Condicinal, le dan Administrar reglas y editen donde sale Se aplica a y colocan =$A:$H

    Con esto si escriben algo en cualquier celda desde la A hasta la H toda esa fila desde la A hasta la H cambiara de formato.

    ResponderBorrar
  59. Necesitas un fórmula que de VERDADERO si cualquier celda de la fila no está vacía. En Excel Clásico, que tiene 256 columnas, podrías usar

    =LARGO(A1:IV1)>0

    para la fila 1.

    ResponderBorrar
  60. Hola!
    estoy intentando hacer un formato condicional en excel 2003 con la siguiente fórmula: =I36="0182 - BBVA" y cuando es verdadero quiero que el relleno de la celda sea gris. Lo he hecho tal cual y no funciona. ¿Tienes otra solución? ¿Tendrá algo que ver que la celda I36 contiene un comboBox (macro)? Gracias!

    ResponderBorrar
  61. Las celdas no contienen objetos como el control ComboBox, sino que estos "flotan" sobre la celda. La celda puede contener una fórmula o una constante independientemente de la combobox.
    De todas maneras, no puedo decirte si que es lo que no funciona si no veo tu archivo.

    ResponderBorrar
  62. Hola mi duda es:
    como hago para que los numeros menores de o iguales de 10 sean rojos y los iguales o mayores de 11 sean negros quisiera una formula para esa duda

    ResponderBorrar
  63. Si usas una versón anterior a Excel 2007, tienes que usar la técnica que muestro en esta nota. En Excel 2007/10 puedes controlar el color de la fuente con formato condicional.

    ResponderBorrar
  64. Buenas tardes.

    He visto varios intentos de acercarse, pero no lo consigo.

    Se trataría de usar el formato condicional para dar color a una fila completa, o no, basándome en el valor de cualquier celda. Por ejemplo, en C3 hay un 32, esa fila entera se pone verde. Si en D5 hay un 32, esa fila también, y así con todas.

    Gracias por tu atención. Saludos.

    ResponderBorrar
  65. Todo lo que hay que hacer es aplicar el formato condicional a toda la fila. Es decir, seleccionar todo el rango y luego definir el formato condicional.

    ResponderBorrar
  66. Buenos días.

    Uso Excel 2010, y lo que hago es lo siguiente:
    1.- Selecciono las 4 primeras filas
    2.- Formato condicional, y en la fórmula pongo =A1:A4=32 y el 32 lo tengo en A2,A3 y B4, me da color a las celdas donde lo encuentra, no a la fila completa.
    3.- Donde pone Aplicar a, tengo $1:$4

    Si pongo la fórmula como =$A1:$A4=32, teniendo el 32 en las mismas casillas que el caso anterior, me colorea A2 y A3. Lógico, porque le digo que mire en la primera celda únicamente.

    Gracias por tu atención.

    Saludos.

    ResponderBorrar
  67. Visentet,

    Excel no puede interpretar la forma matricial =A1:A4=32 en formato condicional. Tampoco es necesario.
    Despues de seleccionar las filas, asegunrándose que la celda activa sea A1, la fórmula debe ser $A1=32. En esta fórmula, la columna A queda fija y la fila va cambiando.

    ResponderBorrar
  68. Hola Jorge

    Me gustaría saber cómo puedo usar el formato condicional para pintar aquellas celdas que contengan una fórmula.

    La idea es identificar rapidamente dónde estan las formulas del fichero.

    Muchas Gracias.

    Me encanta tu blog !!!

    ResponderBorrar
  69. Excel no tiene una función nativa para comprobar si na celda contiene una fórmula. Pero se uede programar una UDF (función definida por el usuario) como muestro en esta nota, y usarla en el formato condicional.

    ResponderBorrar
  70. Jorge, en tu respuesta anterior, al poner =$A1=32, la columna queda fija, y por tanto, sólo puedo comparar el valor de esa columna, y cuando sea igual, pondrá toda la fila de un color. Pero ahora imaginemos que en B3 hay un 32, yo también quiero que esa fila cambie de color. Si pongo el $ no lo encuentra, y si pongo =A1=32, únicamente me colorea la celda donde está esa cantidad, no toda la fila como yo quiero.

    Disculpa mi insistencia, pero es que creo que no me había explicado bien antes.

    Saludos y muchas gracias.

    ResponderBorrar
  71. Hola,

    voy a intentar una explicación breve, pero si no te soluciona la consulta te sugiero que sigamos la conversación por mail privado (la dirección en el enlace Ayuda).
    Si quieres que el formato condicional se aplique a todas la columnas de las fila 1:4, luego de selccionar las filas y con la celda A1 activa, usas la fórmula =A1=32. Esto hace que cuando la celda evaluada sea, por ejemplo, C4, la fórmula cambia automáticamente.

    ResponderBorrar
  72. Gracias Jorge!!

    Me ha ayudado mucho !!

    Ya la tengo operativa

    ResponderBorrar
  73. Hola Jorge,
    Trabajo con Excel 2007 y tengo unos resultados en una tabla y cada celda debe ser comparada con otra celda de otra tabla del mismo libro.
    ¿Cómo puedo establecer la regla para todas las celdas sin tener que definirla celda por celda?

    ResponderBorrar
  74. Hola,
    la clave está en las referencias relativas. Cuando defines una regla para formato condicional, Excel asume que las referencias son absolutas. Por ejemplo

    =$A$1=Hoja2!$A$1

    Esta regla controla si la celda A1 de la hoja activa es igual a la celda A1 de la Hoja2.

    Para que la misma regla se aplique a todo un rango hay que asegurarse que las referencias sean relativas. Por ejemplo, si las tablas en ambas hojas ocupan el rango A1:C10, lo que hay que hacer es seleccionar todo el rango en la hoja activa y aplicar esta regla

    =A1=Hoja2!A1

    Al ser relativas, la regla en la celda A2 se transforma en

    =A2=Hoja2!A2

    ResponderBorrar
  75. Muchas Gracias Jorge,

    Ha funcionado perfectamente.
    Saludos

    ResponderBorrar
  76. Hola Jorge:

    Quiero hacer una condicional por rango de valores que me indique: bajo,normal y alto de acuerdo a rango de valores, por ejemplo:
    <400000 bajo
    400000 a 650000 normal
    > 650000 alto

    como lo puedo hacer?


    mil gracias por tu amable colaboracion.

    ResponderBorrar
  77. Por cierto no con formato condicional, a menos que estés usando Excel 2007 o 2010 (usando flechas/iconos). Si quieres que aparezcan las palabras "bajo", "normal" y "alto" en una columna auxiliar tienes que usar la función SI combinada con la función Y. Sería algo así como

    =SI(A1<400000,"bajo",SI(Y(A1>=400000,A1<=650000),"normal","alto"))

    También podrías considerar usar una tabla auxiliar y la función BUSCARV

    ResponderBorrar
  78. Felicidades por tu blog, tengo un pequeño problema como puedo condicionar que en una celda x me ponga un formato condicional debido a que una celda y es fecha y un formato condicional si es un dato.

    Gracias

    ResponderBorrar
  79. Para Excel las fechas son números y no tiene un método nativo para identificar si una celda contiene una fecha. Por supuesto existen métodos de establecer si una celda contiene una fecha, pero la explucación excede el marco de un comentario. Estaré publicando una nota sobre el tema en breve.

    ResponderBorrar
  80. Excelente información la que aqui se da,... muchas gracias.

    En EXCEL 2007,... Quisiera intercalar un color gris claro entre filas para resaltar el texto y para facilitar la lectura de tablas "cargadas" de números para facilitar la lectura, y no acierto a encontrar la manera de hacerlo.
    Segui el tutorial desde el principio pero en Formato Condicional, no aparece En la ventanilla Condición 1, para elegir la opción "fórmula" y escribir =RESIDUO(FILA(),2)

    Si fuera tan amable de ayudar, le estaria muy agradecido.

    Joan

    ResponderBorrar
  81. Joan,
    no hay diferencias entre Excel 2003 y Excel 2007, excepto en la interfaz del usuario. En Excel 2007, en Formato Condicional hay que elegir "Nueva regla de Formato" y en el formulario que se abre elegir "Utilice una fórmula que determine..." (la última opción).

    ResponderBorrar
  82. Muchas gracias por su respuesta Sr. Jorge L.

    Pero debo de ser muy torpe, ya que siguiendo sus detalladas instrucciones lo único que consigo es "Error en la formula"

    Seguidamente le indico los pasos que he seguido:

    1- "Formato condicional"
    2- "Nueva regla"
    3- "Utilize una formula que determine las..."
    4- "Editar una descripción de regla:"
    5- "Dar formato a los valores donde esta fórmula sea verdadera"
    6- Escribo =RESIDUO(FILA(),2)

    Creo que lo hago todo según Ud. explica tan claro,...pero,... :(

    Muchas gracia de nuevo,...
    Joan

    ResponderBorrar
  83. Joan,

    ¿has seleccionado el rango antes de aplicar el formato condicional?

    ResponderBorrar
  84. SI Jorge L.

    He seleccionado rangos de varias maneras:

    -dos o tres celdas
    -una fila entera
    -varias filas
    -la hoja entera

    -inserto la fórmula " =residuo(fila(),2) " o " =RESIDUO(FILA(),2) "
    -tambien probé con " =RESIDUO(FILA(),2)-1 " o " =RESIDUO(FILA()-1,2)"


    y en todos los casos con el mismo resultado: "Error en la fórmula"

    probablemente estoy haciendo algo mal, el caso es que no se me ocurre el qué,...


    Saludos,
    Joan

    ResponderBorrar
  85. Joan,

    te sugiero que me envíes el archivo por mail privado (fijate en el enlace Ayuda, en la parte superior del blog)

    ResponderBorrar
  86. Hola,

    Tengo una dua,
    Se puede hacer un reporte (hoja 1) donde tu pongas una fecha (dia) y una cantidad de horas y ese dato se agregue a otro reporte de asitencia (hoja 2) en el mismo dia, que coincidan las fechas sin tener que estar copiando y pegando cada uno??

    No se si me explique??

    ResponderBorrar
  87. Por supuesto. Te sugiero que leas la serie de notas sobre tablas dinámicas que publiqué en este blog.

    ResponderBorrar
  88. Muchas gracias Jorge,...

    Al final a funcionado perfectamente la siguiente fórmula puesta en "formato condicional",... "=residuo(fila();2)=0", bueno en mi caso he preferido "=residuo(fila();3)=0"

    El secreto estaba en sustituir la "coma" por un "punto y coma".


    Nuevamente gracias, Jorge.


    Saludos,...
    Joan

    ResponderBorrar
  89. Me alegro que lo hayas solucionado. El tema de los separadores de argumentos en la funciones depende de las definiciones regionales.

    ResponderBorrar
  90. Hola Jorge,

    Necesito crear un formato condicional que me permita marcar en tres colores los siguientes valores,

    0

    >0 pero <46

    >45 pero <120

    Te agradeceria me ayudases

    Un saludo
    Iñaki

    ResponderBorrar
  91. Iñaki,
    tienes que usar la opción "fórmula" (Excel 97-2003). En Excel Clásico puedes establecer hasta tres condiciones, así que en tu ejemplo podría ser
    =Y(A1>0;A1<=45) para los valores mayores de 0 y menores o iguales a 45.
    En Excel 2007 o 2010 puedes establecer más de tres condiciones y adempas tienes la opción de usar iconos.
    Fijate en las notas de mi blog sobre el tema.

    ResponderBorrar
  92. Hola Jorge:

    Mi nombre es Victor. Antes que nada te felicito por tu blog es excelente.

    Quiero ver que me puedas ayudar:
    Tengo una tabla en donde tengo 3 columnas (A,B,C) con muchos registros, en la columna B se realiza un cambio de grupo (1ºA,1ºB,2ºC,2ºB etc) y es muy variado el numero de registros por grupo, lo que quiero hacer es un formato condicional en donde ponga un relleno de celda dependiendo del cambio que ocurra en la columna B. Algo asi como si quisiera sacar subtotales, que me da el resultado en cada cambio de una columna. Espero me haya explicado. Saludo y mil gracias

    ResponderBorrar
  93. No me queda claro lo que quieres hacer. Fijate en lo que pongo en el enlace Ayuda.

    ResponderBorrar
  94. Hola tocayo!!!
    Lo primero, enhorabuena por el blog, que está de vicio y se aprende mucho.

    Tengo una excel con datos entre las columnas A y F
    El caso es que para la columna F consigo aplicar un formato condicional ( rango de 3 colores ) según el contenido, siendo 0 el color azul y 7 el color rojo, de manera que los números intermedios se vuelven degradados entre estos colores.

    El caso es que quisiera que ese formato condicional se aplique desde la columna A a la F y no sólo en la F ( que es donde está el dato a valorar ).

    Si no me explico bien, te podría enviar la excel para que veas a qué me refiero.

    Un saludo.

    Jorge Barreiro

    ResponderBorrar
  95. Jorge,

    supongo que estás usando Excel 2007 o 2010 y aplicando Formato Condicional-Escalas de color.
    No conozco ninguna manera directa de hacerlo. Excel aplica el formato en el rango basándose en el valor de la celda. Por ese motivo sólo lo aplica a la columna F.
    Mandame el archivo para que pueda investigar el tema.

    ResponderBorrar
  96. Hola Jorge:
    Soy Victor de nuevo, creo no me explique. Lo que quiero hacer es un formato condicinal que haga lo siguiente:
    Tengo una tabla que tiene 3 columnas (A,B,C) A=Num B=Grupo C=Nombre, tiene al menos 600 registros ordenada alfabeticamente por grupo que van desde 1ºA hasta 6ºD, quiero que se resalte de un color por cada grupo, ejmeplo todos los de 1ºA sean gris, todos los de 1ºB blancos todos los de 1ºC gris y todos los de 1ºD blancos y asis sucecivamente pero cada grupo tiene diferente cantidad de alumnos. Mil gracias

    ResponderBorrar
  97. Victor,
    para aplicar formato condicional debemos establecer un o varias condiciones. Esto lo hacemos, por ejemplo, creando una fórmula que de como resultado VERDADERO o FALSO. En tu caso podrías usar los valores de la columna B. La fórmula sería =B2="1ºA" para el color gris. Es decir, si se cumple esta condición Excel pone un fondo gris. Y así par cada uno de los grupos. Si estás usando Excel 2007 o 2010 puedes establecer tantas condiciones como sean necesarias. Si usas Excel 2003 o anterior estás limitado a tres condiciones, limitación que puedes superar usando este complemento.

    ResponderBorrar
  98. Jorge:
    Soy Victor, te agradezco mucho tu interes en la respuesta y si esa era la opcion que tenia pensada pero queria ver si existia una con menos condiciones. Mil gracias

    ResponderBorrar
  99. en caso de que tenga excel 2007 que debo de hacer

    ResponderBorrar
  100. De la misma manera. Inicio-Formato Condicional-Nueva regla de formato-Utilice una fórmula...

    ResponderBorrar
  101. Hola,
    espero puedas ayudarme.
    Tengo un calendario y tengo puesto en formato condicional que me cambie el color si es sábado o domingo con =o(diasem(a1;2)=6;diasem(a1;2)=7)
    lo que quiero es que me cambie toda la fila y no solo esa celda, he intentado con los ejemplos que comentas más arriba, pero no hay manera.
    Gracias

    ResponderBorrar
  102. Tienes que aplicar el formato a toda la fila, pero asegurándote que la referencia a la celda sea semi-absoluta ($A1), es decir, con la columna fija y la fila cambiante.

    ResponderBorrar
  103. ufff muchas gracias!!!!!
    Enhorabuena por tu foro, lo acabo de descubrir y esta genial.
    Me gustaría preguntarte otra cosa.
    Hay alguna manera de poner en formato condicional, que si se cumple una coincidencia pinte el color de fondo de otra celda? Me explico. Tengo una hoja con datos, es esta hoja tengo predefinido que si se excribe X en una celda, me la coloree la fila de color verde, así con otras 3 condiciones. En esa fila, hay una fecha, la cual se pintaría también. Me gustaría que en caso de que esa celda se coloree, en otra hoja donde tengo un calendario, coga color también. Es posible?

    ResponderBorrar
  104. Por supuesto. El formato condicional de un rango puede referirse a valores de celdas de otros rangos o fórmulas que se refieren a otros rangos.

    ResponderBorrar
  105. tengo, bueno creo un problema y es que en la columna en la cual pongo la fecha, la cual quiero que me señale en la hoja con el calendario, la puse con una lista para seleccionar, es posible que no me funcione por esto? porque lo he intentado y me colorea absolutamente todas las celdas del calendario. Utilice esto, no se si me habré equicado
    =contar.si(fechas(nombre que asigne al rango de la otra hoja);b56)=0
    lo intente con otro rango en el cual escribi las fechas y me funciono, pero con la lista no
    Gracias

    ResponderBorrar
  106. Te sugiero que me envíes el archivo con los comentarios delcaso, ya que me resulta difícil seguir tu explicación.

    ResponderBorrar
  107. Buen dia primeramente dejame felicitarte por este espacio del cual muchos hemos aprendido.
    Bueno mi pregunta es la siguiente, tengo una celda en la cual quiero cambiar el formato si A1 = 1 ó 2 y la celda B1:D1 y F1:H1 estan vacias que cambie el formato de la celda A1 agradeceria mucho tu ayuda. Saludos

    ResponderBorrar
  108. El formato condicionl requiere una fórmula que de como resultado VERDADERO o FALSO. En tu caso tendrías que usar la función Y para combinar las condiciones (todas las condiciones deben ser verdaderas), y la función O para la primer condición. Sería algo así como
    =Y(O(A1=1,A1=2),CONTARA(B1:D1)=0,CONTARA(F1:H1)=0)

    ResponderBorrar
  109. Hola,
    como puedo poner formato condicionado cuando coincide la descripción del producto y el rango de fechas?
    Deseo que me ponga al producto seleccionado en el rango de la fecha:

    Fecha búsqueda :
    Fecha final :

    Código del producto:


    si coinciden dentro del rango de fecha y el nombre del producto poner un color diferente


    Columna A es donde se encuentran la relación de fechas

    Columna B donde se encuentran la relación del producto

    El precio del producto se encuentra en la columna C,


    Fecha de compra código del producto precio


    gracias

    ResponderBorrar
  110. El formato condicional funciona, como el nombre lo indica, que una o más condiciones se cumplen. En tu caso tenemos, parece ser, dos condiciones
    1 - rango de fechas
    2 - producto
    Queremos poner el formato condicional cuando ambas condiciones se cumplen, así que necesitamos una fórmula que de VERDADERO cuando la fecha cae dentro del rango y cuando el producto sea el elegido. Es decir,

    =Y(Y(fecha elegida>=primer fecha del rango;fecha elegido<=[ultima fecha del rango);producto elegido=producto de la celda))

    ResponderBorrar
  111. Gracias Jorje, estoy empleado la fórmula que comentas de la siguiente fórma
    =Y(Y(D3>=(B12:B200);D4<=(B12:B200);C8=(C12:C200)))
    Pero no, cambia el formato de las celdas de la columna C, donde debería cambiar el formato.

    Aqui tento los datos para que me cambie el formato en la columna C:
    Fecha referencia incicial: D3
    Fecha referencia final: D4
    Celda de referencia del producto a buscar C8

    Los datos se encuentran en la columna B, C y D
    rango donde se encuentran las fechas B12:B200
    Rango donde se encuentra el producto C12:C200

    Gracias

    ResponderBorrar
  112. Te sugiero que me mandes el archivo.

    ResponderBorrar
  113. Quiero darte UN MEGABESO y las GRACIAS, trataba de resolver el problema con formato condicional desde hace días y no podía hasta que encontré éste blog. Esta pág., definitivamente se queda en mis favoritos. De nueva cuenta, mil mil gracias!!

    Atte. Karla B.

    ResponderBorrar
  114. Buenas tardes.
    Tengo una consulta en referencia al formato condicional en excel 2010.

    En excel 2003, podias colorear una fila, haciendo referencia a una celda.
    Es decir si en k6 escribias "PAGADA" , solo tenias que repetir en la formula desde A6 hasta j6 =k6="PAGADA" Y El formato se copiaba.coloreando la fila segun el formato establecido.
    En excel 2010, no sucede.
    Que tengo que hace para que me funcione de la misma forma?
    Gracias por tu ayuda.

    ResponderBorrar
  115. El formato condicional conla opción Fórmula funciona de la misma manera en Excel 2003 y en Excel 2010. Siguiendo tu ejemplo, lo que debes hacer es
    1 - seleccionar el rango A6:J6
    2 - en formato condicional-nueva regla-fórmula poner la fórmula =$K$6="PAGADA"

    Si ka regka debe extenderse a varias fila, digamos de la fila 6 a la fila 100, el método es el mismo pero la fórmula del formato condicional es

    =$K6="PAGADA"

    ResponderBorrar
  116. Buenas tardes.
    Despues de leer todos los post sobre el formato condicional, mi problema es el inverso al que la mayoria plantea aqui. Me explico:
    tengo tres celdas con tres valores (Ej. A1=1, B1=2 y C1=3) Debo de colorear una de ellas a mano por ejemplo en rojo. Lo que busco es que en la celda D1 me aparezca el valor de la celda que he coloreado. Gracias.

    ResponderBorrar
  117. Bien, tu problema no es con el formato condicional sino con el hecho que Excel no tiene funciones que usen colores como argumento.
    Para hacer lo que describes puedes usar las viejas macro-funciones, como describo en esta nota.

    ResponderBorrar
  118. hola mi pregunta es quiero cambiar el color de relleno de una celda A si B>C

    ResponderBorrar
  119. Elemental mi querido Watson! Seleccionas el rango relevante de la columna A; en la fórmula del formato condicional pones (suponiendo que empieza en la fila 2) =B2>C2 (sin los símbolos $ que Excel pone por defecto) y eliges el color de relleno deseado. Listo

    ResponderBorrar
  120. Hola Jorge, muy buena tu pagina, en ocasiones mi trabajo me obliga a buscar metodos que me faciliten la vida. Una inquietud, como puedo utilizar un formato condicional partiendo no de una si no de varias celdas, es decir en las celdas A1, A2, A3 tengo una fecha y quiero que en las celdas B1, B2, B3 me salga "si la fecha en celda B1 es igual o menor a A1 :rojo, pero si por ej. la celda B2 es superior a A2, me salga en verde, los colores son lo de menos, me interesa la formula... Gracias por la ayuda que puedas darme.

    ResponderBorrar
  121. Para cada condición se crea una fórmula. En tu caso las fórmulas son muy sencillas, por ejemplo para =B1<=$A$1 para el rojo. Fijate en los simbolos $ en la referencia a la celda de comparación.

    ResponderBorrar
  122. Gracias, funcionó muy bien, copie y pegue tu formula y como resultado tuve verdadero o falso, trato de hacer lo mismo sin copiar tu formula pero no me funciona, disculparas mi ignorancia pero donde encuentro el signo $ parece el signo de dolar pero quizas no lo es, en la función de formulas encuentro a esta formula con algún nombre ej. BUSCARV donde debo ingresar los campos según corresponda? Gracias y disculpa mi insistencia.

    ResponderBorrar
  123. EL tipo de referencia se establece apretando la tecla F4.

    ResponderBorrar
  124. Hola a todos!
    a ver quién me puede echar un cable, he olvidado cómo se hace para que en una fórmula condicional SI el resultado que yo decida me lo dé en otro color. No me refiero a la celda entera como he visto más arriba (genial el truco!) sino al texto. Recuerdo que era tipo [Rojo] dentro de la función, pero no recuerdo como. La idea es que si el resultado es verdadero diga "OK" pero si el resultado es falso diga "NO" y además me lo escriba en color ROJO.
    Muchísimas gracias!!

    Saludos
    Noelia

    ResponderBorrar
  125. Noelia,
    vamos por partes:
    1 - con fórmulas no puedes cambiar el color de la fuente ni ninguna característica física de la celda. Eso la haces con Formato condicional.
    2 - Para obtener el resultado "OK" o "NO" usas la función SI (por ejemplo, =SI(condición;"OK";"NO").
    3 - Para cambiar el color de la fuente usas Formato Condicional.

    ResponderBorrar
  126. Hola Jorge.

    Hola tengo una tabla con texto y numeros y necesito ponerle formato condicional de color solo a las columnas impares.

    Como lo hago?

    Te lo agradeceria.

    ResponderBorrar
  127. Seleccionando el rango de columnas deseado y usando formato condicional con la fórmula:

    =ES.IMPAR(COLUMNA())

    ResponderBorrar
  128. Estimado jorge, te molesto con una consutla
    necesito que una celda se pinte de color si permanece vacía por 15 días respecto de otra celda. muchas gracias.

    ResponderBorrar
  129. ¿Podrías explicar un poco más que significa que una celda permanezca vacía respecto de otra? Te sugiero que me mandes la consulta por mail privado (aparece en la parte superior del blog).

    ResponderBorrar
  130. Buen dia, quisiera hacerle una consulta, quiero que una fila completa se coloree, al colocar un valor en la columna D, es una lista de precios y quisiera que toda la fila donde se encuenta datos y descrpciones del articulo se coloree cada vez que coloco el precio y se mantenga asi.
    Gracias por su ayuda

    ResponderBorrar
  131. Frank, estoy preparando una nota sobre el tema. Espero publicarla durante el fin de semana.

    ResponderBorrar
  132. Hola, necesito que al poner NO en una celda, se ponga de un color toda la fila y al poner SI que se ponga de otro color. Gracias

    ResponderBorrar
  133. Fran,
    tienes que seleccionar toda la fila al aplicar el formato condicional y poner atención al tipo de dirección de la celda con la condición (dirección absoluta, $A$1, o relativa $A1, por ejemplo).

    ResponderBorrar
  134. Buen día, hace tiempo se hizo esta pregunta:

    "Me gustaría saber cómo puedo usar el formato condicional para pintar aquellas celdas que contengan una fórmula"...

    La respuesta tuya Jorge fue darle un link para que lea la nota, yo la he leido pero ahi solamente explica como impedir que se carguen formulas en un archivo excel, y no responde a la pregunta antes hecha.

    Desde ya agradeceria si sabes como hacer pq me estoy volviendo loco con esto, es para un trabajo de la facu.

    Muchisimas gracias por tanto conocimiento.

    ResponderBorrar
  135. En la nota en cuestión explico que Excel no tiene un función nativa para determinar si una celda contiene una fórmula. Necesitás una función de ese tipo porque formato condicional funciona con fórmulas booleanas (que da como resultado VERDADERO o FALSO). En la nota muestro que se puede crear una macro que haga esa tarea. Pero lo que necesitás es una UDF (función definida por el usuario). El tema en si mismo no sepuede explicar en el marco de un comentario, asi que te descreibo lo que tenés que hacer:
    1- en un módulo del editor de Vb ponés este código:

    Function Contiene_formula(rCelda As Range) As Boolean
    If rCelda.HasFormula Then
    Contiene_formula = True
    Else
    Contiene_formula = False
    End If
    End Function

    Ahora la función "Contiene_formula" aparecerá en el asistente de fórmulas bajo la categoría "Definidas por el usuario" y podés usarla en la definición del formato condicional.

    Si enecsitás una explicación más detallada ponete en contacto conmigo por mail tal como lo explico en el enlace Ayuda.

    ResponderBorrar
  136. Hola :

    Magnífico blog. Soy nuevo usuario y tengo una duda que desearía me ayudases a solventar, por favor.

    Tengo un listado de productos, donde cada celda tiene un producto con varios precios (5 ó 6), los cuales figuran a través de fórmulas vinculadas de otras hojas.

    Lo que necesito es que, de entre todas las celdas de precios de cada artículo, se me resalte aquella del menor precio (fondo y color de tipografía diferentes). Lo he intentado con formato condiconal pero no lo logro.

    Un saludo y gracias

    Horacio

    ResponderBorrar
  137. Horacio,
    la respuesta va en una nota que publicaré en breve.

    ResponderBorrar
  138. Hola soy Horacio :

    Gracias Jorge, la verdad es que estoy aprendiendo mucho. Pensaba que tenía un buen nivel de excel pero ... viéndote a ti yo ando con el coche de los picapiedra y tu vas en ferrari.

    Respecto a mi duda tu respuesta no me ha servido pero, seguramente, porque no te plantee correctamente el problema. Te pongo un ejemplo :

    Producto Prov.1 Prov.2 Prov.3 Prov.4
    Calamar S. 5,60€ 4,30€ 6,25€ 7.39€

    ¿Qué fórmula aplico para que se resalte la de menor precio, en este caso el Proveedor 2? Los valores de las celdas proceden de fórmulas vinculadas.

    Gracias y te animo a seguir con esta gran labor que haces.

    Horacio

    ResponderBorrar
  139. Bien, es mucho más sencillo. Simplemente con la función MIN. Lo que hay que tomar en cuenta es que formato condicional funciona con fórmulas que dan un resultado lógico (VERDADERO o FALSO). Así que en tu caso, si los proveedores están en la columna A y los precios en la columna B (digamos de la fila 2 a la fila 5), usarías

    =MIN($B$2:$B$5)=$B2

    aplicándola al rango A2:A5. Hay que prestar atención al uso de los símbolos $ en las referencias.

    ResponderBorrar
  140. Hola Jorge :

    Soy yo, nuevamente Horacio. He intentado copiar y pegar el formato de hoja de cálculo pero no he podido, a ver si te lo explico mejor para que entiendas mi problema y cómo encontrar una solución.

    FILA 2 : PROVEEDOR "B"
    COLUMNAS H2, J2, L2 y P2 (son los diferentes precios). Quiero que se resalte la celde con el precio más bajo.

    Por ejemplo :
    A C E G H J (Columnas)
    F1 Alvez 2€ 3€ 5€ 1,5€ 3,2€

    Gracias nuevamente,

    Horacio

    ResponderBorrar
  141. Jorge, si no entienes bien mi explicación puedo enviarte la página por e-mail o de alguna otra forma que me sugieras.

    Horacio

    ResponderBorrar
  142. Fijate en las instrucciones del enlace Ayuda (en la parte superior de la plantilla).

    ResponderBorrar
  143. Tengo un grafico con una linea en el tiempo, como si fuera una montaña, hay manera que la linea se coloree diferente (p. ejm., de rojo) si excede cierta cantidad? saludos

    ResponderBorrar
  144. Podrías usar la técnica que muestro en esta nota de mi blog sobre gráficos (el blog está incativa asi que no dejes comentarios en él).

    ResponderBorrar
  145. Tengo una consulta, si tengo una celda fija, digamos G4, quisiera cambiar el color de cada fila en funcion de si los valores de la columna B son mayores o iguales a G4, es decir si B9>G4,entonces toda la fila correspondiente a B9 toma un color especifico.

    ResponderBorrar
  146. Tienes que aplicar formato condicional a toda la fila pero prestar atención a las referencias en la fórmula. Tiene que ser

    $B9>$G$4

    Fijate en los símbolos $.

    ResponderBorrar
  147. hola, perdon por las molestias, pero necesitaria saber como hago para q en una celda (a1) me aparezca el valor q esta en (b1) si este es mayor q cero. lo deberia hacer con formato condicional porque si no se cumple la condicion yo deberia de cargar (en la celda que necesito el formato) datos a mano.... desde ya muchisimas gracias.

    ResponderBorrar
  148. Bueno, hay un pequeña confusión. Con formato condicional sólo se puede hacer eso, dar formato a la celda de acuerdo al contenido. Para que "aparezca" en A1 el valor de B1 si este es mayor que cero hay que usar una fórmula condicional (digamos, =SI(B1>0;B1;"")).
    Ahora, A1 no está vacía, contiene la fórmula, por lo que al ingresar un dato, si B1 es menor que cero, estarías borrando la fórmula.

    ResponderBorrar
  149. Hola, tengo una tabla dinamica con varios campos, los cuales van ocultandose o apareciendo segun la información que necesite ver, por ende no puedo colocar un formato condicional de color a una fila, por que al ocultarse o aparecer los campos, el formato de color queda obsoleto. Me explico, en la F5 el campo es X, con valores entre 1 a 10; al consultar otro dato, el campo X desaparece (por k no hay valor) y en el F5 aparece el campo Y, con valores entre 500 y 1000. Como hago para que el condicionante de color vaya amarrado al campo, o a la palabra que aparece en la celda F5. Gracias, Pancho.

    ResponderBorrar
  150. Hola, quisiera su ayuda para resolver un caso de formato condicional que tengo, Ejemplo:
    Tiempo ventas= 15%
    1- si el % de ventas => a tiempo ventas: Verde.
    2- Si el % de ventas esta entre 10%-14.99% amarillo.
    3- Si el % de ventas <10% Rojo.
    El problema esta en que el tiempo de ventas cambia a diario al igual que el % de ventas, por lo que el formato condicional debe ser dinamico.
    Agradezco su soporte para resolver esto.
    Saludos...Efrain.

    ResponderBorrar
  151. Por lo general el formato condicional aplicado al campo de valores de una tabla dinámica se mantiene. ¿Podrías enviarme el archivo para ver donde está el problema? ¿Qué versión de Excel estás usando?

    ResponderBorrar
  152. Efrain,
    recién hoy he visto tu comentario/consulta. Dado que el formato condicional depende de la relación del porcentaje de ventas al dato de tiempo de ventas, no veo donde está el problema. En lugar de valores absolutos tiene que usar relativos. Por ejemplo la tercer condición es

    Si el % de ventas <(tiempo de ventas *2/3): Rojo

    ResponderBorrar
  153. HOLA JORGE
    me puede ayudar con este ploblema.

    ¿podria indicarme que operador utilizamos para elevar a la potencia (ejemplo 4 al cuadrado) dentro de microsoft excel? ¿que otras altenativas ha encontrado?

    ResponderBorrar
  154. Se usa ^ (Shift+6 en el teclado inglés)

    ResponderBorrar
  155. Hola que tal!!!

    He leido tus sugerencias y me parecen muy acertadas. Ojala pudieras ayudarme...Tengo el siguiente problema..tengo una columna de calificaciones desde cero hasta 100 pero con manejo de decimales..lo que necesito es que si es de cero a 49.9 la celda se ponga de color rojo, si es de 50 a 69.9 la celda sea de color amarillo y si es de 70 a 100 la celda se ponga de color verde..Te agradezco

    ResponderBorrar
  156. Con formato condicional, con la opción Fórmula usando al función Y para determinar el rango de los valores para cada condición. Las fórmulas serían

    =A1<=49.9

    =A1=Y(A1>49.9;A1<=69.9)

    =A1>69.9

    ResponderBorrar
  157. Hola Como puedo hacer para que una celda se ponga de color cuando le escriba un texto o un dato numerico,
    Gracias

    ResponderBorrar
  158. Si interpeto tu consulta, se trata de señalar celdas vacías. Usando formato condicional con la opción Fórmula podrías usar

    =ESBLANCO(A1)

    o mejor aún

    =LARGO(A1)=0

    ResponderBorrar
  159. hola mi estimado que pena molestar pero aprovecho para felicitarte por este gran recurso eres todo un profesional del e-learnig mi pregunta es sencilla existe la forma de emparejar celdas para que cambie el color de ellas según el color que posea la otra osea yo relleno una celda en amarillo pero necesito que en otra hoja del mismo documento cambie el color de esa celda a ese amarillo es como igualar formatos de celdas pero referente al color si le asigno a una celda me cambia en la otra gracias muy amable feliz día y bendiciones!!!

    ResponderBorrar
  160. Hola, Jorge no sé si me puedas ayudar.
    Tengo una tabla con valores, quiero que toda la fila se sobree de negro cuando en la columna J las celdas tengan valor de inactiva o cancelada.
    Cómo puedo hacer eso con formato condicional??

    ResponderBorrar
  161. necesito un formato condicional que me permita ver los registros nombre y edad de color Rojo y en negrita, de aquellos cuya edad sea mayor a un promedio calculado en una celda aparte. como lo hago?

    ResponderBorrar
  162. Usando la opción Formula. Si la celda donde se calcula el promedio es, digamos, B1, y los registros estan en el rango A1:A100, lo que harías es seleccionar todo el rango y luego aplicar el formato condicional con la fórmula

    =A1>$B$3

    ResponderBorrar
  163. Lizzy,
    seleccionando todo el rango y luego aplicando el formato con la opción Fórmula. La fórmula debe referirse a la celda en la columna J con un dirección semi-absoluta (por ejemplo, $J1).
    ¿Que es un valor inactivo o cancelado?

    ResponderBorrar
  164. Tengo un problema

    Diseñe una planilla Excel que contenga la siguiente información: Producto, Proveedor, Precio Unitario, Stock Actual, Stock Mínimo y Total de 15 productos. Agregue, posteriormente, una columna que indique automáticamente, mediante un valor “SI” o “NO”, si el producto necesita reposición en caso de que el stock actual sea igual o menor al stock mínimo. Complete la columna Proveedor con 3 posibles valores: M & M, Costa o Nestlé, en la columna Stock Actual genere una secuencia numérica que comience en 30 y que se incremente de 3 en 3. Para la columna Stock Mínimo genere una secuencia numérica que comience en 100 y que se decremente de 5 en 5. Complete la columna Total multiplicando el stock actual con el precio unitario de cada producto.

    ResponderBorrar
  165. ¿Cuál es el problema? Te sugiero que te pongas en contacto conmigo por mail privado.

    ResponderBorrar
  166. Hola Jorge, 1ero. gracias por tus aportes! Sos de gran utilidad
    Te presento mi duda:
    Tengo una columna con números, los cuales pueden tomar valores repetidos. Ordeno a los mismos de menor a mayor y necesito que con formato condicional, la raya inferior que separa un grupo de números iguales del siguiente grupo, sea gruesa. Por ejemplo, tengo 5 números 1 y 18 números 2. Después del 5to. número 1 necesito una raya mas oscura que separe todos los números 1 de los números 2 y así sucesivamente si hay mas números
    Desde ya muchas gracias
    Saludos

    ResponderBorrar
  167. ¿Podrías se un poco más explícito? Los números, ¿están en celdas separadas, en filas, en columnas, todos en nun misma celdas...?

    ResponderBorrar
  168. Fijate en el enlace Ayuda (en la parte superior de la plantilla).

    ResponderBorrar
  169. muy buena la ayuda que nos ofreces, de verdad se nota que eres un experto en el tema, me sirvió mucho esta publicación, era lo que necesitaba, sin embargo como a mi a otra persona no le funciono la formula en un principio, y fue por una sencilla razón, tu colocaste en la formula =RESIDUO(FILA(),2)y arrojaba error, y es solo cambiar la , por ; y problema solucionado, obviamente fue problema de edición no de conocimiento, y no escribo para corregirlo sino para complementar y ayudar a los que tuvieran el mismo problema. Nuevamente gracias y felicitaciones.

    ResponderBorrar
  170. Me alegro que te hyta resultado útil. No es un problema de edición. Los separadores de argumetnos en las funciones dependen de las definiciones regionales del sistema. Lo mismo sucede con los separadores de miles y decimales en los números (en algunos países se usa el punto para separa miles y coma para decimales y en otros al revés).

    ResponderBorrar
  171. Buenos días,

    quisiera saber si se puede bloquear una celda en excel sin tener que proteger el libro o la hoja entera. Yo lo que quiero es que no se escriba en una celda, no se si será posible sin proteger, estoy pensando en hacerlo con un formato condicional, pero no se como. He tratado de hacerlo con el conjunto de iconos, para que si se escriben números te devuelva el aspa roja, pero no se como hacer si se escriben letras. si alguien me puede ayudar. Muchas gracias.

    ResponderBorrar
  172. No se puede, pero podés bloquear sólo esa celda de manera que las restantes no estarán protegidas.

    ResponderBorrar
  173. Hola, Jorge

    Cordial saludo.

    Quisiera saber como aplicar formato condicional en una misma celda, la cual puede contener segun la calificacion 4 posibles opciones (D = Rojo; A = Naranja; R = Verde; B = Azul y E = Amarillo).

    Por ejemplo, en la Celda B5 puede aparecer según la formula D, A, R, B y E; y dependiendo el resultado debe aparecer el color.

    Agradezco tu ayuda.

    ResponderBorrar
  174. Definiendo una regla de formato condicional para para criterio. Si todavía estás usando Excel 97-2003 estás limitado a tres condiciones. Para superar esta limitación puedes ver lo que propongo en esta nota.

    ResponderBorrar
  175. hola... yo tengo una tabla con 3 columnas con datos, en la 3er columna estan enumeradas del 1 al 10 por ejemplo,, yo tengo que usar el formato condicional para que cuando aparezca la numeracion par, se pinte toda la fila de datos color gris..tenemos que usar la funcion residuo.. como hago?

    ResponderBorrar
  176. Hola, tengo un problemilla que no consigo resolver.
    tengo un rango de A a G y quiero pintar todas las filas cuando HALLE la palabra "Total" en el texto de la celda de la columna A (aunque haya más palabras)
    Muchísimas gracias

    ResponderBorrar
  177. Estimado Jorge, estoy tratando de desplegar un formato condicional que tengo en una celda en 1000 celdas consecutivas, cuando coloco la condición en "editar reglas de formato" para mi caso $A$1 al copiar el formato en las celdas siguientes no modifica el valor variable para que tome la celda correspondiente, evidentemente porque uso una referencia absoluta, pero al cambiarla por $A1, para que cambie con cada celda del manera $A2 , $A3... y así sucesivamente, sale el mensaje " No puede utilizar referencias relativas en criterios de Formato condicional para escalas de color, barras de estado o conjunto de iconos". Si existe alguna manera de resolver esto para no copiar manualmente las 1000 celdas una a una, mucho le agradecería su comentario.

    ResponderBorrar
  178. Jack, tendrías que explicar qué es lo que querés hacer para poder encontrar una solución alternativa.

    ResponderBorrar
  179. Hola Jorge.
    En primer lugar darte la enhorabuena por este estupendo blog
    En segundo lugar plantearte ni consulta:
    Tengo un formato condicional para buscar duplicados en el rango A1:10
    =contar.si($A$1:$A$10;A1)>1 (RELLENO --> COLOR ROJO)
    Si copio y pego en pegado especial --> formatos si mantengo las referencias absolutas no me coge el rango en el que estoy pegando y si le pongo referencias relativas me cambia la condición que estoy utilizando. (Utilizo excel 2010)
    Te agradecería muchísimo si me pudieras dar alguna solución.

    ResponderBorrar
  180. Bueno, le mejor solución es definir el formato condicional desde el principio para el nuevo rango. ¿Por qué complicarse con Pegado Especial, cuando se soluciona con unos pocps clics?

    ResponderBorrar
  181. Creo que o no me expliqué bien o no me entendiste.
    Necesito copiar el formato para que me busque los duplicados pero sólo de las celdas en las que estoy copiando.
    Por ejemplo si yo copio en el rango A11:A21 quiero que sólo me busque los duplicados de ese rango, no del rango A1:21
    Un saludo, y muchas gracias.

    ResponderBorrar
  182. Miguel, si, se entiende y de ahí mi respuesta. Como ya descubriste, hay una conflicto entre el tipo de referencias requeridas para que CONTAR.SI determine duplicados y el manejo de referencias para aplicar formato condicional. Lo que no entiendo es por qué necesitás copiar el formato y no definirlo para el nuevo rango.

    ResponderBorrar
  183. Perdón por la tardanza, pero es que estuve de puente...

    Jorge la respuesta a tu pregunta es que necesito copiarla algo así como unas 200 y pico de veces.
    Lo que no sé es si esta sería la forma más rápida y sencilla de hacerlo,si la hubiera y me la puedes decir te quedaría muy agradecido.
    Un saludo,

    ResponderBorrar
  184. Hola, excelentes publicaciones las que haces. Gracias por compartirlas.
    Me gustaría saber si hay una solución para el siguiente problema:
    1. Tengo una tabla en Excel con valores de presupuesto, en la celda superior se encuentra el presupuesto disponible y en la celda inferior el presupuesto requerido por cada proyecto.
    2. Lo que necesito es que se pueda marcar con formato condicional si la celda con el presupuesto requerido (donde se aplicará el formato condicional) es mayor que el presupuesto disponible que es la celda superior a la anterior.
    Espero puedas apoyarme. Muchas gracias de antemano.
    Saludos cordiales,
    Natasha Murillo

    ResponderBorrar
  185. Natasha, en Formato Condicional usas la opción Fórmula. La fórmula a usar es sencilla, sencillamente compara si el valor de la celda "presupuesto requerido" es mayor que el valor de la celda correspondiente del presupuesto disponible.

    ResponderBorrar
  186. Miguel [Angel, disculpas por la demora en responder. Siguiendo con el hilo del asunto y como usas Excel 2010, lo más inmediato es usar Formato Condicional no con fórmulas sino con la opción Resaltar Reglas de Celdas--Duplicar Valores. Dos clics al rango de celdas y listo. Es más rápido que copiar.

    ResponderBorrar
  187. Hola Jorge, genial el blog, tengo una duda con excel 2007.
    Quisiera que cuando pusiera un valor en una celda o un nombre, automaticamente me rellenase otras celdas de la misma hoja con valores que yo he predeterminado. Por ejemplo: tengo varias tarifas llamadas tarifa_1, tarifa_2, etc. cuando ponga una de las tarifas quiero que cambie automaticamente el lvalor de otras celdas que yo asigne y así no rellenar manualmente estas celdas segun el valor de la tarifa que yo asigne, es posible?

    Gracias

    ResponderBorrar
  188. Sencillamente tienes que crear en las celdas una referencia a la celda que contiene el valor. Si la intención es que en una celda (digamos A1) se pone el nombre de la tarifa (tarifa_1, tarifa_2,etc.) lo que hace que en otras celdas se apliquen el valor de la tarifa, podrías usar un nombre para cada tarifa y en las celdas ligadas usar el nombre como argumento de la función INDIRECTO.

    ResponderBorrar
  189. Buenas tardes, quisiera saber si con formato condicional puedo resaltar los dias martes de un listado. Todo ello con la fórmula de =diasem(A1;1)>2 .... es esto posible?

    ResponderBorrar
  190. Si, por supuesto suponiendo que en A1 hay una fecha.

    ResponderBorrar
  191. Estimado, podría facultar su mail para hacerle una consulta? Le envíe un mail pero no se si estaba correcto.

    Saludos

    ResponderBorrar
  192. La dirección está en el enlace Ayuda (en la parte superior de la plantilla). Si eres el lector de Valencia, he recibido el mail.

    ResponderBorrar
  193. Hola Jorge
    Puedo ocupar el formato condicional para cuando tengo filas repetidas es decir mientras la fila siguiente sea igual a la anterior pongo naranja y si es diferente pongo blanco y sigo de la misma forma con el color que este trabajando en ese momento.
    Espero haberme explicado

    ResponderBorrar