formato condicional2

13/07/2007 - 15:46 por Eco | Informe spam
A ver, tengo una consulta un poco complicadilla para lo que son mis
conocimientos de excel así que recurro a vosotros, espero me podaías ayudar.

Tengo una tabla en la que almaceno diariamente una serie de elementos cuando
cumplen ciertos criterios y estos elementos se corresponden con una serie de
filas en las cuales uno de los campos es la fecha.

Bueno pues lo que pretendo es colorear la fila cuando el elemento (que
identifico por una de sus celdas) se repetida al menos durante 3 días
consecutivos y con el handycap de que es posible que algún día no existan
datos.

¿Alguna pista de por donde tirar?

Gracias de antemano.

Preguntas similare

Leer las respuestas

#6 Eco
16/07/2007 - 23:13 | Informe spam
Hola Héctor, he conseguido *más o menos* el efecto esperado adaptando un
poco tu opción c) para poder trabajar con fechas

Para mi caso real (recuerdo que lo del mundial era un ejemplo para
simplificar la explicación) tengo que:

La celda con el valor de referencia se encuentra en la columna C, la fecha
está ubicada en la columna E (trabajo directamente con fechas), y voy a
tener valores todos los días del año excepto los días que por problemas en
la herramienta no sea posible... ah! otra cosa, mi configuración hace uso
del ; como separador de campos en vez de la ,. :))

La fórmula que utilizo en este caso quedaría:

=CONTAR.SI(INDICE(C:C;SI(E2-$E$2-1<2;2;COINCIDIR(E2-2;E:E;0))):INDICE(C:C;COINCIDIR(E2;E:E));C2)=3

He dicho *más o menos* porque si la utilizo como formato condicional no me
funciona correctamente al extender el formato de la 1ª al resto de filas
(colorea las que le da la gana), para que funcione utilizo una columna
adicional con el resultado de esta fórmula (verdadero, falso o N/A) y
condiciono el color al valor de dicha columna.

Me parece extraño que no funcione al extender usando formato condicional y
si funcione si extiendo a partir de una celda y de paso POR SI VES ALGUNA
INCONSISTENCIA de todos modos por lo que he podido comprobar funciona.

Lo del handycap lo asumo ya que creo que la solución sería complicar la
fórmula demasiado, cuando falta un día me aparece #N/A y no colorea la fila.

Muchas gracias por tu ayuda Héctor, un saludo de Eco.

"Héctor Miguel" escribió en el mensaje
news:%
hola, (...) ?

... en el caso real no tienen por que ser 5 todas las veces, de hecho
... pueden salir un numero diferente de resultados (esto no lo habia
especificado pero necesito que sea asi).



para esta parte, dejame hacer *hincapie* en el comentario [marginal] de la
primer respuesta:
"si cualquier duda [o requieres de ayuda mas... *precisa*]... comentas ?
[con detalles mas... *precisos* tambien] :D"

... los que sean, que aparezcan en las ultimas 3 fechas... solo debo
implementar el caso c) [...]
... tener diferente numero de goleadores cada dia me impide usar estas
formulas... :(
Deberia utilzar una formula que hiciese referencia a la fecha para
escoger el rango de días pero no se como hacerlo.



te sugiero modificar la busqueda y utilizar en lugar de fechas, -> numeros
consecutivos [para las jornadas]
-> puedes poner la fecha correspondiente a cada jornada -p.e.- en alguna
celda adyacente [por lo siguiente]:
-> es mas sencillo [y modificable] armar *bloques* de jornadas por numero
consecutivo que andar buscando fechas
[descontando fines de semana, fechas brincadas, etc. etc. etc.]
-> las jornadas puedes numerarlas en secuencia hasta la terminacion del
evento [y punto, si complicaciones de fechas] ;)

con esta base de jornadas *numeradas consecutivamente* [p.e.] en la
columna 'A', nombres en la columna 'B'. a partir de la fila 2...
las siguientes formulas son en sustitucion de las anteriores [mismas
opciones a, b y c] tu decide si solo la opcion c) o todas ;)

a) =contar.si(indice(b:b,fila()):indice(b:b,coincidir(a2+2,a:a)),b2)=3
b)
=contar.si(indice(b:b,si(a2-1<1,2,coincidir(a2-1,a:a,0))):indice(b:b,coincidir(a2+1,a:a)),b2)=3
c)
=contar.si(indice(b:b,si(a2-2<1,2,coincidir(a2-2,a:a,0))):indice(b:b,coincidir(a2,a:a)),b2)=3

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

Respuesta Responder a este mensaje
#7 Héctor Miguel
17/07/2007 - 05:57 | Informe spam
hola, !

__ 1 __
... he conseguido *mas o menos* el efecto esperado adaptando un poco tu opcion c) para poder trabajar con fechas
Para mi caso real (recuerda que lo del mundial era un ejemplo para simplificar la explicacion) tengo que:



1) [nuevamente]... dejame hacer *hincapie* en el comentario [marginal] de la primer respuesta:
"si cualquier duda [o requieres de ayuda mas... *precisa*]... comentas ? [con detalles mas... *precisos* tambien] :D"

__ 2 __
La celda con el valor de referencia se encuentra en la columna C, la fecha esta ubicada en la columna E
(trabajo directamente con fechas), y voy a tener valores todos los dias del a#o
excepto los dias que por problemas en la herramienta no sea posible...



2) [como preambulo]... insisto en que...
"es mas sencillo [y modificable] armar *bloques* de jornadas por numero consecutivo que andar buscando fechas"
"[descontando fines de semana, fechas brincadas, etc. etc. etc.]"

__ 3 __
ah! otra cosa, mi configuracion hace uso del ; como separador de campos en vez de la ,. :))



3) esta parte, en raras ocasiones se expone en la consulta original :-( [por eso acostumbro comentarlo... *por si las dudas*] ;)

__ 4 __
La formula que utilizo en este caso quedaria:
=CONTAR.SI(INDICE(C:C;SI(E2-$E$2-1<2;2;COINCIDIR(E2-2;E:E;0))):INDICE(C:C;COINCIDIR(E2;E:E));C2)=3
He dicho *mas o menos* porque si la utilizo como formato condicional no me funciona correctamente al extender el formato de la 1a al resto de filas (colorea las que le da la gana)
para que funcione utilizo una columna adicional con el resultado de esta formula (verdadero, falso o N/A)
y condiciono el color al valor de dicha columna.
Me parece extra#o que no funcione al extender usando formato condicional y si funcione si extiendo a partir de una celda
y de paso POR SI VES ALGUNA INCONSISTENCIA de todos modos por lo que he podido comprobar funciona.
Lo del handycap lo asumo ya que creo que la solucion seria complicar la formula demasiado
cuando falta un dia me aparece #N/A y no colorea la fila...



4) existen *severas* diferencias entre las formulas *adaptada* y *original/propuesta/adivinada/...* en su opcion c)...
*adaptada*: contar.si(indice(c:c;si(e2-$e$2-1<2;2;coincidir(e2-2;e:e;0))):indice(c:c;coincidir(e2;e:e));c2)=3
*propuesta*: contar.si(indice(b:b,si(a2-2<1,2,coincidir(a2-2,a:a,0))):indice(b:b,coincidir(a2,a:a)),b2)=3

a) la propuesta busca si el primer *bloque* debe iniciar en la fila 2: -> si(a2-2<1,2
o... en la secuencia numerada de la jornada: -> coincidir(a2-2,a:a,0)
-> *revisa* QUE es lo que esta buscando la formula *adaptada* [ya que al hablar de *fechas*... no tengo idea de tu arreglo] -?-

b) la propuesta *finaliza* el bloque ubicando LA ULTIMA celda/fila de la jornada *vigente*...
-> numerada secuencialmente con la funcion coincidir en: -> indice(b:b,coincidir(a2,a:a))
-> *revisa* lo que *encuentra* la adaptada con coincidir en: -> indice(c:c;coincidir(e2;e:e))

c) no dejes de *notar* que la primer funcion coincidir utiliza el tercer parametro de coincidencia *exacta* y la segunda NO

d) no es claro a que te refieres con: "... al extender el formato de la 1a al resto de filas (colorea las que le da la gana)." -?-
te puedo asegurar que ANTES de emitir la propuesta, realice algunas pruebas [asumo que con las suficientes *variantes*] -?-
por lo que serviria si comentas *como* es que *extiendes* el formato [condicional ?... o de una celda al resto del rango ?]
[y de pasadita... *como/donde/...* es que lo aplicas/estableces/... *original/inicialmente*] -???-

5) [finalmente]... no lo tomes a mal, pero cuando las consultas se hacen utilizando ejemplos *hipoteticos*...
por que asumes que las propuestas estaran [o *debieran estar*] basadas en datos *concretos/reales/...* ???
[visita: -> http://excel4all.spaces.live.com/]

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#8 Eco
19/07/2007 - 01:38 | Informe spam
Disculpa que me retrase en contestar pero últimamente estoy saturado de
trabajo.

Me veo casi obligado a trabajar con las fechas porque trabajo con
estadisticos que cargo en varias hojas, no todos empiezan en la misma fecha
ni tienen fallos de carga en los mismos días, lo que he intentado al adaptar
tu formula, es aprovechar que excel trata las fechas como un número
consecutivo para cada dia, por lo tanto pense que para el caso podria ser lo
mismo solo que la cuenta no empieza desde uno sino desde la primera fecha
que tenga en la hoja. De este modo, tomo como referencia la primera casilla
que siempre se corresponde con la primera fecha que aparece en mis hojas y
las siguientes fechas que son consecutivas (tomo datos anuales) tambien
responderan a una secuencia numerada consecutivamente. Así, E2-$E$2-1<2 (no
se por que puse esto pero sería más sencillo haber puesto E2-$E$2>3)se
correspondería con a2-2<1...

Bueno a falta de que le eche un vistazo mas profundo al valor de los indices
para seleccionar el rango entre tu propuesta y mi adaptacion (por lo que he
podido comprobar si que lo hacen en el mismo rango) en cuanto al tema de
extender, me refiero a que yo defino el formato condicional en la primera
fila con datos (la 2) y la extiendo al resto de la tabla (clic derecho en el
cuadrito inf. derecho de la seleccion de la fila o parte de la fila donde he
definido el formato condicional, luego arrastro hacia abajo la selección
hasta cubrir las filas que se encuentran debajo en la tabla, suelto y escojo
rellenar formatos solo).==> En este caso lo hace mal y se colorean celdas
aisladas (no toda la fila) que ademas no se corresponden con filas donde se
cumple la condicion.

Cuando utilizo una columna auxiliar con la formula que muestra si se cumple
la condición (verdadero/falso/#N/A), para extender, o bien hago doble clic
sobre el cuadrito inf. derecho de la seleccion de celda o bien clic en el
cuadrito y arrastro hasta el final de la tabla. ==> En este caso
el resultado de la formula es el correcto y marca verdadero en las filas que
cumplen la condicion, luego condiciono el formato condicional de cada fila
con el valor de esa celda. (mencionar que la formula que introduzco en los
dos casos es la misma)

Mas datos que no se si pueden influir, no doy formato condicional a toda la
fila ya que dejo una celda con otro formato condicional definido que depende
del valor de la celda. Es posible que al tener otros formatos condicionales
definidos en la misma hoja (sobre una columna) sea la causa pero la verdad
que no lo entiendo, para mi que la formula condicional no se extiende
correctamente y no se como verificarlo.

Bueno me sabe mal ocupar tu tiempo. Muchas gracias por la ayuda, de momento
con lo que tengo me doy mas que satisfecho. :))

"Héctor Miguel" escribió en el mensaje
news:%
hola, !

__ 1 __
... he conseguido *mas o menos* el efecto esperado adaptando un poco tu
opcion c) para poder trabajar con fechas
Para mi caso real (recuerda que lo del mundial era un ejemplo para
simplificar la explicacion) tengo que:



1) [nuevamente]... dejame hacer *hincapie* en el comentario [marginal] de
la primer respuesta:
"si cualquier duda [o requieres de ayuda mas... *precisa*]... comentas
? [con detalles mas... *precisos* tambien] :D"

__ 2 __
La celda con el valor de referencia se encuentra en la columna C, la
fecha esta ubicada en la columna E
(trabajo directamente con fechas), y voy a tener valores todos los dias
del a#o
excepto los dias que por problemas en la herramienta no sea posible...



2) [como preambulo]... insisto en que...
"es mas sencillo [y modificable] armar *bloques* de jornadas por numero
consecutivo que andar buscando fechas"
"[descontando fines de semana, fechas brincadas, etc. etc. etc.]"

__ 3 __
ah! otra cosa, mi configuracion hace uso del ; como separador de campos
en vez de la ,. :))



3) esta parte, en raras ocasiones se expone en la consulta original :-(
[por eso acostumbro comentarlo... *por si las dudas*] ;)

__ 4 __
La formula que utilizo en este caso quedaria:
=CONTAR.SI(INDICE(C:C;SI(E2-$E$2-1<2;2;COINCIDIR(E2-2;E:E;0))):INDICE(C:C;COINCIDIR(E2;E:E));C2)=3
He dicho *mas o menos* porque si la utilizo como formato condicional no
me funciona correctamente al extender el formato de la 1a al resto de
filas (colorea las que le da la gana)
para que funcione utilizo una columna adicional con el resultado de esta
formula (verdadero, falso o N/A)
y condiciono el color al valor de dicha columna.
Me parece extra#o que no funcione al extender usando formato condicional
y si funcione si extiendo a partir de una celda
y de paso POR SI VES ALGUNA INCONSISTENCIA de todos modos por lo que he
podido comprobar funciona.
Lo del handycap lo asumo ya que creo que la solucion seria complicar la
formula demasiado
cuando falta un dia me aparece #N/A y no colorea la fila...



4) existen *severas* diferencias entre las formulas *adaptada* y
*original/propuesta/adivinada/...* en su opcion c)...
*adaptada*:
contar.si(indice(c:c;si(e2-$e$2-1<2;2;coincidir(e2-2;e:e;0))):indice(c:c;coincidir(e2;e:e));c2)=3
*propuesta*:
contar.si(indice(b:b,si(a2-2<1,2,coincidir(a2-2,a:a,0))):indice(b:b,coincidir(a2,a:a)),b2)=3

a) la propuesta busca si el primer *bloque* debe iniciar en la fila
2: -> si(a2-2<1,2
o... en la secuencia numerada de la jornada: ->
coincidir(a2-2,a:a,0)
-> *revisa* QUE es lo que esta buscando la formula *adaptada* [ya
que al hablar de *fechas*... no tengo idea de tu arreglo] -?-

b) la propuesta *finaliza* el bloque ubicando LA ULTIMA celda/fila de
la jornada *vigente*...
-> numerada secuencialmente con la funcion coincidir en: ->
indice(b:b,coincidir(a2,a:a))
-> *revisa* lo que *encuentra* la adaptada con coincidir en: ->
indice(c:c;coincidir(e2;e:e))

c) no dejes de *notar* que la primer funcion coincidir utiliza el
tercer parametro de coincidencia *exacta* y la segunda NO

d) no es claro a que te refieres con: "... al extender el formato de la
1a al resto de filas (colorea las que le da la gana)." -?-
te puedo asegurar que ANTES de emitir la propuesta, realice algunas
pruebas [asumo que con las suficientes *variantes*] -?-
por lo que serviria si comentas *como* es que *extiendes* el
formato [condicional ?... o de una celda al resto del rango ?]
[y de pasadita... *como/donde/...* es que lo aplicas/estableces/...
*original/inicialmente*] -???-

5) [finalmente]... no lo tomes a mal, pero cuando las consultas se hacen
utilizando ejemplos *hipoteticos*...
por que asumes que las propuestas estaran [o *debieran estar*] basadas
en datos *concretos/reales/...* ???
[visita: -> http://excel4all.spaces.live.com/]

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida