martes, 9 de junio de 2015

Formato condicional usando el operador lógico Y

Archivo de Excel utilizado: formato_condicional.xlsx

Veamos un caso de práctico del uso que se da a Formato Condicional cuando lo usamos con una fórmula que requiere el uso del operador lógico Y. Lo que hacemos es añadir dos condiciones lógicas de forma que se exige que se cumplan ambas. Cuando se piden ambas se requiere usar el Y.
  • pedimos que el valor sea inferior al promedio de su columna, y
  • pedimos que no se trate de una celda vacía


13 comentarios:

  1. Muchas gracias, sirvió de mucho para agilizar.

    ResponderEliminar
  2. Muchas gracias
    Es una aportación didáctica, perfectamente clara y muy instructiva.
    A destacar ( especialmente para mi) el problema al copia el formato.
    Algo que hasta la fecha no me había sucedido pero que tendré muy presente de ahora en adelante.
    Reitero mi agradecimiento por las aportaciones y lo que aprendemos de usted.
    Un saludo.

    ResponderEliminar
  3. Estimado Adolfo, antes que nada una felicitación por publicar información tan ilustrativa, mira yo apenas estoy empezando a utilizar las macros, tengo una base con más de mil indicadores, de los cuales cada indicador tiene datos para distintos años, algunos son datos bienales, anuales..., de mi base quiero extraer la atriz con la información correspondiente a cada indicador y de ahi generar una gráfica por cada uno, crees que se pueda hacer algo, un cordial saludo

    ResponderEliminar
  4. Muchas gracias Don Adolfo por sus grandes aportaciones a la cultura de la informática, principalmente al Excel. Yo le estoy muy agradecido porque he aprendido lo que uste no se imagina. Dios lo bendiga

    ResponderEliminar
  5. Luego de aplicar lo aprendido aquí, quise contar las celdas con color de formato condicional, pero no me funciona. Adjunto código

    Function ContarColor(rango As Range, color As Long) As Long
    Application.Volatile
    Dim rngC As Range

    For Each rngC In rango.Cells
    If rngC.FormatConditions.Count > 0 Then If ColorIndexDelFC(rngC) = color Then ContarColor = ContarColor + 1
    Next rngC

    Set rngC = Nothing
    End Function

    Espero su comentario. Gracias!

    ResponderEliminar
    Respuestas
    1. Este es otro código que también utilicé y no me funcionó

      Function CONTARPORCOLORFC(CeldaColor As Range, Rango As Range) As Integer

      Dim Celda As Range
      Dim Total As Integer
      Dim Color As Long

      Color = COLORFC(CeldaColor)

      For Each Celda In Rango.Cells
      If COLORFC(Celda) = Color Then
      Total = Total + 1
      End If
      Next Celda

      CONTARPORCOLORFC = Total

      End Function

      Eliminar
    2. Hola Alejandro.
      Te he dejando en el fichero de Excel una nueva hoja. En la Hoja2 se suman los de color azul de enero en la columna AB.
      Verás que es una fórmula matricial. Las fórmulas matriciales se validan con CONTROL+SHIFT+ENTER.
      Un saludo.

      Eliminar
    3. Estimado:
      Muchas gracias, ha resultado muy bien para el primer mes, pero me ha surgido un problema al querer replicarlo a los otros años utilizando la misma fórmula. Los valores que arroja la fórmula me dan distintos al número de celdas con color, reviso y reviso la fórmula y no encuentro error.

      Eliminar
  6. Hola Adolfo:
    He seguido los pasos del ejercicio y tengo resultado erróneos. Pasa en las celdas D6, D31, D36, D45,, por ejemplo.
    La fórmula que tengo en el formato condicional es:
    =Y(B2<=PROMEDIO(B$2:C$61);B2<>"")

    No entiendo dónde está el error.
    Gracias.

    ResponderEliminar
    Respuestas
    1. Hola Piti.
      Para hacer el formato condicional es necesario primero estar situados en la celda B2. Luego se hacen los pasos que se comentan en el vídeo y finalmente se extiende el formato a toda la tabla con la brocha. El rango al que se extiende con la brocha, al hacer el pegado de formato incluye desde la propia celda B2.
      Espero que te funcione.

      Eliminar
  7. Buenos días!. Enhorabuena por el Blog!!.

    Nos podría enseñar cómo se hacen los gráficos de la OCDE que suelen ser de barras y dentro de la barra o encima o debajo de ella aparece un rombo con el nivel de ese mismo indicador para otro país, o para el mismo país en otro año diferente? Muchas gracias !

    ResponderEliminar
  8. Hola buenas tardes,
    Lo primero de todo es felicitarte por el blog que puede ser el mejor en español de Excel.

    Tengo un problema con una tabla de excel he intentado buscar algo parecido en esta web pero no encontré nada.
    Quiero insertar en una celda 3 valores posibles: 0, 1 y cualquier otro entre 2 y 99. Depende de cual de esas tres posibilidades se escriba en la celda, hay que hacer una de esas 3 operaciones. Estoy intentando hacerlo con la función SI anidada pero no hay manera, me sale una fórmula ininteligible.
    También querria que la fila de la casilla se ponga de un color u otro si se escribe en la celda un 0 o un 1.
    Si pudiera ayudarme se lo agradezco.Un saludo y enhorabuena por la web de nuevo.

    ResponderEliminar
    Respuestas
    1. Hola Fernando. Supongamos que es el la celda A1 donde puedes poner el valor 0, o en valor 1, o cualquier otro. Vamos a crear una fórmula en la celda B1 que nos diga cuando se ha puesto un 0, un 1, o cualquier otro valor. La fórmula es la siguiente.
      =SI(A1=0;"cero";SI(A1=1;"uno";"otro"))
      Para el formato condicional puedes poner un doble formato. Sigue estos pasos para la celda A1.
      1º Pon a la celda A1 un fondo azul
      2º Estando en A1 vamos a Formato condicional y elegimos "nueva regla" y "Utilice una fórmula que determine las celdas para aplicar formato". Escribe la siguiente fórmula =A1=0 y en Formato elige Relleno amarillo. Aceptamos.
      3º Estando en A1 vamos a Formato condicional y elegimos "nueva regla" y "Utilice una fórmula que determine las celdas para aplicar formato". Escribe la siguiente fórmula =A1=1 y en Formato elige Relleno verde. Aceptamos.
      Si todo ha salido bien, al escribir un 1 en la celda A1 ésta se pondrá de color verde, si escribimos un 0 se pondrá de color amarillo y para cualquier otro valor se pondrá de color azul.
      Espero que te funcione bien.
      Un saludo.

      Eliminar