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.
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
Muchas gracias, sirvió de mucho para agilizar.
ResponderEliminarMuchas gracias
ResponderEliminarEs 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.
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
ResponderEliminarMuchas 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
ResponderEliminarLuego de aplicar lo aprendido aquí, quise contar las celdas con color de formato condicional, pero no me funciona. Adjunto código
ResponderEliminarFunction 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!
Este es otro código que también utilicé y no me funcionó
EliminarFunction 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
Hola Alejandro.
EliminarTe 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.
Estimado:
EliminarMuchas 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.
Estimado Adolfo;
EliminarTengo varias dudas respecto la Formula es de Carácter Matricial y estoy recién estudiando este tema ;
=SUMA(--((B2:AA2)<=(B$62:AA$62))*(B2:AA2<>""))
Que significa -- en realidad la formula completa?? puede explicar favor, le agradezco y excelente Aporte.
saludos
Hernan Padilla
Hola Hernan.
EliminarAñadir -- al inicio de una fórmula sirve para convertir los valores lógicos de VERDADERO o FALSO en valores numéricos de 1 y 0. Uno de los signos negativos sirve para multiplicar por -1 esto fuerza a que los valores lógicos se conviertan en numéricos. El otro signo negativo sirve para que los valores numéricos obtenidos no sean negativos, ya que en matemáticas (-1)*(-1)=1.
En la fórmula se trabaja con rangos. Cuando se escribe: (B2:AA2)<=(B$62:AA$62) lo que estamos pidiendo a Excel es que nos de un vector de valores lógicos (VERDADERO o FALSO) que se obtienen al comparar si los valores del rango (B2:AA2) son menores o iguales a los valores del rango (B$62:AA$62).
Ese vector de valores lógicos se convierte en un vector de ceros y unos al añadir los dos signos negativos (--). Ese vector de ceros y unos luego se multiplica por el rango B2:AA2 pero sólo cuando el valor es distinto (<>) de "".
El resultado de toda esta fórmula es que únicamente se cuentan los valores del rango B2:AA2 que sean distintos de "" y que sean menores o iguales a la media, que podemos encontrar en el rango (B$62:AA$62).
¿Por qué, sirve para contar si se usa la función SUMA? Como estamos usando vectores de ceros y unos, y los unos suponen valores que cumplen los criterios, lo que hacemos sumando esos unos es sumar los valores que cumplen los criterios. Pero no sumamos el valor que tienen en su celda, sino simplemente sumamos 1 por cada uno de los valores que cumplen los criterios. Y esto es contar.
En el rango (B2:AA2) únicamente existen tres valores que cumplen que están por debajo de la media, y por tanto el resultado para esa fila es 3.
Un saludo.
Hola Adolfo:
ResponderEliminarHe 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.
Hola Piti.
EliminarPara 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.
Buenos días!. Enhorabuena por el Blog!!.
ResponderEliminarNos 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 !
Hola buenas tardes,
ResponderEliminarLo 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.
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.
Eliminar=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.