Buscar max y min fecha en un rango supeditado a otras condiciones

29/04/2008 - 21:45 por Hugo Miguel Angel | Informe spam
Hola, gracias por las respuestas que pudieran surgir. Créanme que he estado
varios días enteros intentando hacer lo que necesito, y me he buscado por
todas partes algo parecido pero no lo encuentro aún. Aquí vamos.

Tengo una tabla con varias columnas

A B C D ...
FECHA ELEMENTO REALIZADO HORAS
1 01-01-08 Sensor SI 8
2 04-02-08 Sensor SI 4
3 05-02-08 Transmisor SI 5
4 06-03-08 Sensor NO 0
5 17-04-08 Transmisor NO 0
6 22-04-08 Sensor SI 6
7 23-04-08 Sensor NO 0
8 24-04-08 Transmisor SI 5
9 25-04-08 Transmisor SI 4
10 26-04-08 Sensor SI 3
... etc.

La idea es calcular el tiempo medio entre intervenciones para Sensor y
Transmisor

Ha saber, las fechas para Sensor con Realizada = "SI" serían.
01-01-08 (Minima Fecha)
04-02-08
22-04-08
26-04-08 (Maxima Fecha)

Tiempo transcurrido = 116 días / 4 intervenciones = 29 días promedio.

Para Transmisor serían con Realizada = "SI" serían.
05-02-08 (Minima Fecha)
24-04-08
25-04-08 (Maxima Fecha)

Tiempo transcurrido = 80 días / 3 intervenciones = 26,7 días promedio.

La lista es bastante larga, serán unos 1000 registros y son varias más cosas
que Sensores y Transmisores (unos 14 elementos).

Lo intenté con sumaproducto, que porcierto, la he usado bastante, pero no se
me ocurre (sin usar VB) como lograr este cálculo.

Si a alguien se le ocurre (aunque sea una Function en VB) estaré muy
agradecido.

Por cierto he leido la página:
http://www.xldynamic.com/source/xld...ODUCT.html
Ya la he consultado y no tengo problemas con el idioma, lo cierto es que no
hayé algo parecido y lo que no entendí, no lo pude asociar a mi caso, pero si
alguien ve una semejanza estoy todo oídos (u ojos en este caso).

Es excelente este foro, he aprendido un cerro de cosas, asi que aprovecho de
agradecer a todos y cada uno que se dan tiempo de aportar.

Saludos,
Muchisimas Gracias,
Visitame en:
www.mensajerosdeluz.com
 

Leer las respuestas

#1 Xavier Budet Graco
29/04/2008 - 22:57 | Informe spam
Hola Hugo, tal como tienes la tabla es fácil implementar las fórmulas de Base de Datos.
Con ½MAX consigues la fecha más alta y con ½MIN la más baja. Si las restas te dará el numero de días y si las divides por las coincidencias el número que buscas.

Las coincidencias pueden encontrarse con:
=SUMAPRODUCTO(--(B2:B11=H2);--(C2:C11=I2))

En H2 he situado la referencia para "Elemento" y en I2 la de "Realizado". Yo utilizo el ";" como separador.

Saludos,

Xavier

Quitar MAC para contestar. Gracias.



"Hugo Miguel Angel" escribió en el mensaje news:
Hola, gracias por las respuestas que pudieran surgir. Créanme que he estado
varios días enteros intentando hacer lo que necesito, y me he buscado por
todas partes algo parecido pero no lo encuentro aún. Aquí vamos.

Tengo una tabla con varias columnas

A B C D ...
FECHA ELEMENTO REALIZADO HORAS
1 01-01-08 Sensor SI 8
2 04-02-08 Sensor SI 4
3 05-02-08 Transmisor SI 5
4 06-03-08 Sensor NO 0
5 17-04-08 Transmisor NO 0
6 22-04-08 Sensor SI 6
7 23-04-08 Sensor NO 0
8 24-04-08 Transmisor SI 5
9 25-04-08 Transmisor SI 4
10 26-04-08 Sensor SI 3
... etc.

La idea es calcular el tiempo medio entre intervenciones para Sensor y
Transmisor

Ha saber, las fechas para Sensor con Realizada = "SI" serían.
01-01-08 (Minima Fecha)
04-02-08
22-04-08
26-04-08 (Maxima Fecha)

Tiempo transcurrido = 116 días / 4 intervenciones = 29 días promedio.

Para Transmisor serían con Realizada = "SI" serían.
05-02-08 (Minima Fecha)
24-04-08
25-04-08 (Maxima Fecha)

Tiempo transcurrido = 80 días / 3 intervenciones = 26,7 días promedio.

La lista es bastante larga, serán unos 1000 registros y son varias más cosas
que Sensores y Transmisores (unos 14 elementos).

Lo intenté con sumaproducto, que porcierto, la he usado bastante, pero no se
me ocurre (sin usar VB) como lograr este cálculo.

Si a alguien se le ocurre (aunque sea una Function en VB) estaré muy
agradecido.

Por cierto he leido la página:
http://www.xldynamic.com/source/xld...ODUCT.html
Ya la he consultado y no tengo problemas con el idioma, lo cierto es que no
hayé algo parecido y lo que no entendí, no lo pude asociar a mi caso, pero si
alguien ve una semejanza estoy todo oídos (u ojos en este caso).

Es excelente este foro, he aprendido un cerro de cosas, asi que aprovecho de
agradecer a todos y cada uno que se dan tiempo de aportar.

Saludos,
Muchisimas Gracias,
Visitame en:
www.mensajerosdeluz.com

Preguntas similares