Saltar al contenido

Recommended Posts

publicado

Hola amigos. Tengo un problema. Os adjunto el archivo. Quiero establecer formatos condicionales basados sobre 7 posibilidades (excel 2003 solamente permite 3 posibilidades). Quiero poner color de fondo a las celdas de las columnas A,B,C y D, según sea el valor de la misma fila en la columna E.

He leido en varios foros y los que son buenos de verdad (yo no lo soy) lo hacen gracias a VBA.

En el archivo adjunto, tengo grabada la macro "FORMATO_COND", esta macro tiene guardadas las ejecuciones de excel para crear 3 formatos condicionales, y ampliar manualmente a 7 el sistema falla con el código de error 1004 (avisado que seria así por la ayuda en línea de excel).

He encontrado otras opciones en algunos foros, al parecer válidas, cuyas lineas de programación os reproduzco en las otras fichas del archivo, pero yo no se aplicar estas opciones a mi programa.

¿Alguien sabe como hacerlo? ¿Alguien es tan amable de echarme una mano? ¿Es complicadillo o qué? espero vuestras noticias. Gracias amigos.

Listado_colores.zip

publicado

En las versiones anteriores a Excel 2007 sólo es posible tener 3 formatos condicionales en la misma celda.

Si necesitas 7 debes hacerlo de otra forma. La única solución que se me ocurre es una macro que se ejecute cada vez que cambia una celda de la hoja.

Por otra parte, en los formatos que tienes actualmente, la condición hace referencia a la fila siguiente a la que está. P.e. La fila 3 está en azul (color que corresponde a la fila 4) en lugar del amarillo que marca.

Esperamos tu respuesta. Un saludo.

publicado

Gracias por tu ayuda, amigo. Sí, me he equivocado en la aplicación del formato condicional. En este post (para no liarlo más) adjunto el archivo arreglado, o sea, agradeceré a los foreros que tomen como punto de partida el archivo de este post y no el anterior. Gracias a todos.

Comentas que lo mejor seria una macro que se ejecutara cada vez que se cambia el valor de una celda... bien... planteamiento bueno. Solamente una cosa, los datos de este listado corresponden a una vinculación con bases de datos externa y se actualiza cada vez que se abre el archivo. No pasa nada, sigue siendo bueno ¿No?.

¿Cómo seria esta macro que planteas? ¿No sirven las macros planteadas en los foros indicados en el archivo?

Gracias amigo. Espero tu ayuda.

Listado_colores.zip

publicado

Te adjunto un fichero en el que he cambiado algunas cosas:

La hoja CódigoColor tiene los colores y el texto que busca en la misma celda. Este es el patrón de color que va a buscar, o sea, que si quieres cambiar el color o la descripción a mostrar, deberás hacerlo aquí. A partir de entonces, tomará este nuevo color (los anteriores conservarán el que tuvieran, si quieres cambiar pulsa F2 sobre la celda de colores).

La hoja relación continúa igual, cuando indiques el código, las celdas anteriores cambiarán.

El módulo VBA está comentado, para si quieres cambiar algo.

No sé si he sabido explicarme. Si tienes alguna cuestión o comentario, no dudes en decírmelo. Espero que te pueda haber ayudado.

Un saludo.

Ps. El fichero es .rar renombrado como .zip, puesto que no permite subirlo de esta forma.

Listado_colores_comprimido.zip

publicado

Hola Emilio

A lo largo del hilo me ha acompañado continuamente la necesidad de saber cuál es la base de aplicar un color u otro, es decir el texto en negrita indicando un color (columna E9 es lo que aparece en tus hojas, o lo que quieres es que las columnas (A a D) correspondientes a cada color se coloreen en el color indicado.

Si es así y sabiendo cúal es el criterio de asignación de colores las macros que adjuntas en tu ejemplo se podrían modificar para tu caso. En el caso contrario la solución del compañero efmc podría serte válida.

Un saludo desde Vitoria

publicado

"ioyama":

Gracias por tu interés en ayudarme. El rango de datos se recupera de una base de datos externa donde uno de los campos de esa base de datos es el campo "color" donde anoto el nombre del color con el que quiero que se pinte la fila de datos en las consultas de excel; ahora hay que traducir "la palabra en hechos" y hay que conseguir pintar el resto de celdas de la fila con el color que indico en esta celda. Aunque la opción planteada por efmc sea también válida, me gustaría madurar un poco lo que me planteas tú. Trabajo muchísimo con formatos y me gustaría aprender y entender todo aquello que tú en este caso me puedas enseñar, tendiendo en cuenta por supuesto, que soy bastante pardillo. ¿Te he contestado a lo que preguntas? Creo que sí. Espero tus noticias, si puedes. Gracias

"efmc" :

Me doy cuenta de lo pardillo que soy en temas de programación con el trabajo que me has enviado. En el archivo que me has enviado funciona de maravilla, pero intento trasladar tu trabajo al archivo original donde lo quiero llevar a cabo y tengo problemas para implantarlo. De todas formas no he podido dedicarme a esto todo el tiempo que quiero, casi seguro que hasta mañana no podré llegar a alguna conclusión. Mañana te digo algo, y confio en tu ayuda una vez sepa decirte por qué no me ha llegado a funcionar, seguro que me lo indicas en un momento. Gracias.

publicado

Hola Emilio

Entiendo como lo haces, yo a lo que me refería es que si una fila determinada debe ir en amarillo (por ejemplo) será debido a algún criterio (espero que no artístico o de presentación). Por ejemplo la fila 3 va en amarillo porque el valor de la celda B3 es mayor de 25 y menor de 50, o porque en la celda C3 se indica que el responsable es Pepe o etc., etc. es decir sabiendo los criterios se puede tener una tabla de asiganación de colores y mediante una macro (ya que hasta Excel 2007 el formato condicional sólo admite 3 condiciones, con 2007 no sé cuántos exactamente) similar a cualquiera de las que aportabas en tu ejemplo hacer que las filas se coloreen según los criterios marcados.

Un saludo desde Vitoria

P.S. Te adjunto un fichero que preparé hace tiempo para otro foro, verás que en la 3ª hoja hay unos nombres coloreados y un rango de fechas. En función de ese rango se colorean en la hoja principal los días afectados. No es exactamente tu caso sino un ejemplo de lo que te digo.

Como ya he comentado en otro mensaje, si este hilo se va a alargar quizás fuese interesante sacarlo de PRESENTACIONES y pasarlo a Macros, Funciones o General, creo que quedaría al alcance de más gente (las presentaciones no es lo que más se suele consultar en los foros, por lo menos yo)

CalendarioColoreado_io_7768_02.zip

publicado

Apreciado ioyama:

El criterio del color se basa en los valores de la celda "D", los registros de la relación tienen asignado un valor (en texto, está claro) en la columna D. Opté por crear un campo aparte denominado "color" que es el de la columna "E" en base a que hay diferentes valores de la columna "D" que van con el mismo color; como ves, solamente es por una simple cuestión de simplicidad, a la hora de hacer la macro pretendo trabajar con "un valor=un color" en vez de que un color abarque a dos o más valores, por eso creé este campo con el nombre del color. Y todos los datos/registros de la lista provienen de una base de datos externa, excel solamente los consulta, calcula totales si procede, y formatea según condicionantes (más de tres en este caso).

por otra parte, estoy de acuerdo contigo en traspasar este hilo a "macros", pero recuerda lo "pardillo" que soy. ( ¿Cómo se traspasa? )

Gracias amigo. Saludos desde Lleida.

publicado

Hola Emilio

Entendido. A medida que vayas avanzando si necesitas ayuda .... Por aquí estaremos.

En cuanto a lo de pasar el hilo al apartado adecuado .... creo que debería hacerlo el moderador del foro (no sé si es proper).

Un saludo desde Vitoria

publicado

Amigo efmc:

En primer lugar, igual que a ioyama, GRACIAS por ayudarme, sois estupendos.

Te explico: He aplicado todo lo que tú me has dicho en mi archivo y va perfectamente bien. Creo que lo he aplicado bien, los colores se me aplican a la perfeccion. En la ficha original las columnas a la izquierda no son 3, son diez; he modificado el valor en cuestión y va perfectamente. Creo que va genial tu planteamiento.

Solamente hay un problema: Tu trabajo funciona si yo voy a la columna donde está el nombre del color y allí le escribo manualmente un color de la lista; entonces se activan la macros y las se colorean tal y como yo pretendo. Pero si estos datos se recuperan de una consulta externa NO SE COLOREA NADA una vez la consulta se ha actualizado.

La solución a este problema tiene pinta como si solamente hubiera que cambiar la manera de ejecutarse esta macro... ¿NO?. También se le puede indicar a la misma macro que primero actualice la consulta en cuestión y luego pinte todos los registros según el valor de la columna del color... cierto ¿NO?

Gracias.

publicado

Hola Emilio

En el adjunto tienes una posibilidad (se ejecuta al abrir el fichero, o bien llamando a la macro Colorear, puedes poner un botón o un acceso desde teclado).

Quizás a efmc se le ocurra algo más ágil (he probado el evento Worksheet_Activate, pero no me ha convencido, probablemente no habré estado suficientemente hábil)

Un saludo desde Vitoria

Listado_colores_io_fae.zip

  • 3 months later...
publicado

Colores Formato Condicional

Buenos días, lleva varios días rompiendome la cabeza para asignar colores a las celdas cuando introduzco un dato y no me sale del todo bien o si hubiera otra forma que se pudiera hacer se lo agradecería.

Ejemplo.

Tengo que utilizar las celdas de la A1 B1 C1 D1 E1 F1 G1

* Introduzco un valor en A1 -> la celda cambia a color rojo

* Introduzco un valor en B1 -> cambia a color azul y la A1 a azul tambien

* Introduzco un valor en C1 -> cambia a amarillo, y a su vez B1 y A1 amarillo

* Introduzco un valor en D1 -> cambia a verde, y a su vez C1, B1 y A1 verde

* Introduzco un valor en E1 -> cambia a rosa, y a su vez D1, C1, B1 y A1 rosa

Si introduzco un valor en F1 (aqui sera texto 3 letras) la celda cambia color blanco

Si meto un valor en G1, color negro y que cambie a color negro a la vez F1, E1, y D1.

Un saludo y espero su ayuda. Gracias.

Conéctate para comentar

Podrás dejar un comentario después de conectarte



Conéctate ahora
×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.