ENCONTRAR COMBINACION DE ID

10/10/2006 - 22:08 por Mario Rios | Informe spam
Hola a todos


Tengo una hoja de la siguiente manera:

A B C D E F G H I J K L
RUTA EXTENDIDA RUTA
PLAZA PLAZA PLAZA PLAZA ID PLAZA PLAZA ID ID ID ID
MEX CVA ACA 1020 MEX GDL 1022 1023 1032
MEX CHL PNN 1021 MEX CIS 1025 1032
MEX GDL ZLO 1022 MEX TIN 1027
MEX GDL PVR 1023
MEX SJR QRO 1024
MEX CIS 1025
MEX TIN ARR TAP 1026
MEX TIN 1027
MEX PUE 1028
CIS AGU 1029
CIS SFR LEN 1030
CIS IXQ PCH 1031
CIS GDL MEX 1032
CIS ZCL 1033



De la columna A a la E son una base de datos extensa que se refiere a los
puntos por donde pasa cada ruta, lo que me interesa me ayuden es como
hacerle para que al capturar en la columna G y H la plaza (puntos donde
cruza una ruta) a partir de la columna I reporte los ID donde cruza por esos
puntos ya sea de ida o de vuelta.


Saludos y gracias anticipadas


Mario

Preguntas similare

Leer las respuestas

#1 Mario Rios
10/10/2006 - 23:08 | Informe spam
Creo que así se ve mejor la "hoja"

A B C D E
F G H I J K L
RUTA EXTENDIDA RUTA
PLAZA PLAZA PLAZA PLAZA ID PLAZA PLAZA ID
ID ID ID
MEX CVA ACA 1020 MEX GDL
1022 1023 1032
MEX CHL PNN 1021 MEX CIS
1025 1032
MEX GDL ZLO 1022 MEX TIN
1027
MEX GDL PVR 1023
MEX SJR QRO 1024
MEX CIS 1025
MEX TIN ARR TAP 1026
MEX TIN 1027
MEX PUE 1028
CIS AGU 1029
CIS SFR LEN 1030
CIS IXQ PCH 1031
CIS GDL MEX 1032
CIS ZCL 1033



"Mario Rios" escribió en el mensaje
news:
Hola a todos


Tengo una hoja de la siguiente manera:

A B C D E F G H I J K L
RUTA EXTENDIDA RUTA
PLAZA PLAZA PLAZA PLAZA ID PLAZA PLAZA ID ID ID ID
MEX CVA ACA 1020 MEX GDL 1022 1023 1032
MEX CHL PNN 1021 MEX CIS 1025 1032
MEX GDL ZLO 1022 MEX TIN 1027
MEX GDL PVR 1023
MEX SJR QRO 1024
MEX CIS 1025
MEX TIN ARR TAP 1026
MEX TIN 1027
MEX PUE 1028
CIS AGU 1029
CIS SFR LEN 1030
CIS IXQ PCH 1031
CIS GDL MEX 1032
CIS ZCL 1033



De la columna A a la E son una base de datos extensa que se refiere a los
puntos por donde pasa cada ruta, lo que me interesa me ayuden es como
hacerle para que al capturar en la columna G y H la plaza (puntos donde
cruza una ruta) a partir de la columna I reporte los ID donde cruza por
esos puntos ya sea de ida o de vuelta.


Saludos y gracias anticipadas


Mario



Respuesta Responder a este mensaje
#2 Héctor Miguel
11/10/2006 - 04:51 | Informe spam
hola, Mario !

1) [siento 'decirte' que]... tanto esta 'muestra' de los datos, como la que expones en tu siguiente mensaje...
-> 'se ven' igual de... bien/mal [sobre todo, debido a que no se 'aprecia' cual es el rango de datos] :D

2) si mis 'adivinanzas' se acercan al objetivo que comentas -?- estos serian los 'supuestos'...
una 'base de datos' [extensa... pero que de momento y para efectos de prueba, queda 'reducida' a]...
a) fila 1 para los titulos de las columnas
b) 'B2:E15' cuatro columnas con -posibles- puntos por donde pasa cada ruta
c) columna 'F:F' [en el rango 'F2:F15'] con el # de ID de cada una de las rutas
d) columnas 'G:H' para las plazas de 'origen y destino' [p.e.] 'G2'=MEX y 'H2'=GDL
e) a partir de a celda 'I2' se 'rescatan' los # de ID de las rutas [columna 'F'] por donde coinciden/pasan/... 'origen y destino'

3) si 'voy bien'... pon la siguiente formula en la celda 'I2', la copias/arrastras/... n_columnas a la derecha de la fila 2
y DESPUES... seleccionas desde 'I2' hasta las n_columnas a la derecha... y la copias/arrastras n_filas hacia abajo :)
-> toma nota de que es una formula de 'entrada matricial' -> cuando se introduce/edita, se 'termina' con {ctrl}+{mayus}+{enter}
y debe ser en una sola linea [la 'corto' por efectos de caracteres por linea en los mensajes] :-(

=indice($f:$f,k.esimo.mayor(k.esimo.menor(si($b$2:$e$15=$g2,fila($f$2:$f$15)),fila(indirecto("1:"&contar.si($b$2:$e$15,$g2))))
*contar.si(desref($b$2:$e$2,k.esimo.menor(si($b$2:$e$15=$g2,fila($f$2:$f$15)),fila(indirecto("1:"&contar.si($b$2:$e$15,$g2))))
-2,),$h2),columna(a$1)))

4) lo que devuelve la formula anterior, es cada ruta [columna 'F'] donde 'coinciden' origen y destino [pero]... EN ORDEN INVERSO
[p.e.] si para tu primer ejemplo [MEX / GDL] apuntas a las rutas: 1022, 1023 y 1032 obtendras: -> 1032, 1023 y 1022

5) llegara el momento/celda en que empieces a obtener 'valores de error' [o el titulo de la columna 'F'] :-((
puedes utilizar formatos condicionales en el 'rango de salida' ['I2:xx_yy] con la siguiente formula: =no(esnumero(i2))
[y le aplicas p.e. un formato con fuente en color blanco, o... ???] ;)

6) si necesitas los datos rescatados NO en orden 'inverso'... [la formula se 'alargaria', pero no se pueden anidar mas funciones] :-((
habria que recurrir al uso de nombres-formula [y algunas otras 'cosillas'] :))

perdon por lo extenso de los comentarios... y la 'kilometrica' formula [en tanto se encuentra la manera de 'adelgazarla'] :))

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

__ la consulta original __
Tengo una hoja de la siguiente manera:
A B C D E F G H I J K L
RUTA EXTENDIDA RUTA
PLAZA PLAZA PLAZA PLAZA ID PLAZA PLAZA ID ID ID ID
MEX CVA ACA 1020 MEX GDL 1022 1023 1032
MEX CHL PNN 1021 MEX CIS 1025 1032
MEX GDL ZLO 1022 MEX TIN 1027
MEX GDL PVR 1023
MEX SJR QRO 1024
MEX CIS 1025
MEX TIN ARR TAP 1026
MEX TIN 1027
MEX PUE 1028
CIS AGU 1029
CIS SFR LEN 1030
CIS IXQ PCH 1031
CIS GDL MEX 1032
CIS ZCL 1033
... la columna A a la E son una base de datos extensa que se refiere a los puntos por donde pasa cada ruta
... me interesa... que al capturar en la columna G y H la plaza (puntos donde cruza una ruta)
a partir de la columna I reporte los ID donde cruza por esos puntos ya sea de ida o de vuelta.
Respuesta Responder a este mensaje
#3 Mario Rios
11/10/2006 - 18:32 | Informe spam
Hola Hector

La verdad no se como hacer para que se aprecie la información bien.

Adivinador si eres, porque tienes el panorama exacto de lo que requiero.

El problema es que la formula me manda el siguiente mensaje #¡VALOR!.

Saludos

Mario



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

1) [siento 'decirte' que]... tanto esta 'muestra' de los datos, como la
que expones en tu siguiente mensaje...
-> 'se ven' igual de... bien/mal [sobre todo, debido a que no se
'aprecia' cual es el rango de datos] :D

2) si mis 'adivinanzas' se acercan al objetivo que comentas -?-
estos serian los 'supuestos'...
una 'base de datos' [extensa... pero que de momento y para efectos de
prueba, queda 'reducida' a]...
a) fila 1 para los titulos de las columnas
b) 'B2:E15' cuatro columnas con -posibles- puntos por donde pasa cada
ruta
c) columna 'F:F' [en el rango 'F2:F15'] con el # de ID de cada una de
las rutas
d) columnas 'G:H' para las plazas de 'origen y destino' [p.e.]
'G2'=MEX y 'H2'=GDL
e) a partir de a celda 'I2' se 'rescatan' los # de ID de las rutas
[columna 'F'] por donde coinciden/pasan/... 'origen y destino'

3) si 'voy bien'... pon la siguiente formula en la celda 'I2', la
copias/arrastras/... n_columnas a la derecha de la fila 2
y DESPUES... seleccionas desde 'I2' hasta las n_columnas a la
derecha... y la copias/arrastras n_filas hacia abajo :)
-> toma nota de que es una formula de 'entrada matricial' -> cuando se
introduce/edita, se 'termina' con {ctrl}+{mayus}+{enter}
y debe ser en una sola linea [la 'corto' por efectos de caracteres
por linea en los mensajes] :-(

=indice($f:$f,k.esimo.mayor(k.esimo.menor(si($b$2:$e$15=$g2,fila($f$2:$f$15)),fila(indirecto("1:"&contar.si($b$2:$e$15,$g2))))
*contar.si(desref($b$2:$e$2,k.esimo.menor(si($b$2:$e$15=$g2,fila($f$2:$f$15)),fila(indirecto("1:"&contar.si($b$2:$e$15,$g2))))
-2,),$h2),columna(a$1)))

4) lo que devuelve la formula anterior, es cada ruta [columna 'F'] donde
'coinciden' origen y destino [pero]... EN ORDEN INVERSO
[p.e.] si para tu primer ejemplo [MEX / GDL] apuntas a las rutas: 1022,
1023 y 1032 obtendras: -> 1032, 1023 y 1022

5) llegara el momento/celda en que empieces a obtener 'valores de error'
[o el titulo de la columna 'F'] :-((
puedes utilizar formatos condicionales en el 'rango de salida'
['I2:xx_yy] con la siguiente formula: =no(esnumero(i2))
[y le aplicas p.e. un formato con fuente en color blanco, o... ???]
;)

6) si necesitas los datos rescatados NO en orden 'inverso'... [la formula
se 'alargaria', pero no se pueden anidar mas funciones] :-((
habria que recurrir al uso de nombres-formula [y algunas otras
'cosillas'] :))

perdon por lo extenso de los comentarios... y la 'kilometrica' formula [en
tanto se encuentra la manera de 'adelgazarla'] :))

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

__ la consulta original __
Tengo una hoja de la siguiente manera:
A B C D E F G H I J K L
RUTA EXTENDIDA RUTA
PLAZA PLAZA PLAZA PLAZA ID PLAZA PLAZA ID ID ID ID
MEX CVA ACA 1020 MEX GDL 1022 1023 1032
MEX CHL PNN 1021 MEX CIS 1025 1032
MEX GDL ZLO 1022 MEX TIN 1027
MEX GDL PVR 1023
MEX SJR QRO 1024
MEX CIS 1025
MEX TIN ARR TAP 1026
MEX TIN 1027
MEX PUE 1028
CIS AGU 1029
CIS SFR LEN 1030
CIS IXQ PCH 1031
CIS GDL MEX 1032
CIS ZCL 1033
... la columna A a la E son una base de datos extensa que se refiere a
los puntos por donde pasa cada ruta
... me interesa... que al capturar en la columna G y H la plaza (puntos
donde cruza una ruta)
a partir de la columna I reporte los ID donde cruza por esos puntos ya
sea de ida o de vuelta.




Respuesta Responder a este mensaje
#4 Héctor Miguel
11/10/2006 - 22:55 | Informe spam
hola, Mario !

... la formula me manda el siguiente mensaje #¡VALOR!.



1) no se si tomaste nota de una indicacion en la propuesta para dar entrada a la formula...
-> toma nota de que es una formula de 'entrada matricial'
cuando se introduce/edita, se 'termina' con {ctrl}+{mayus}+{enter}
y debe ser en una sola linea [la 'corto' por efectos de caracteres por linea en los mensajes] :-(





=indice($f:$f,k.esimo.mayor(k.esimo.menor(si($b$2:$e$15=$g2,fila($f$2:$f$15)),fila(indirecto("1:"&contar.si($b$2:$e$15,$g2))))
*contar.si(desref($b$2:$e$2,k.esimo.menor(si($b$2:$e$15=$g2,fila($f$2:$f$15)),fila(indirecto("1:"&contar.si($b$2:$e$15,$g2))))
-2,),$h2),columna(a$1)))

2) podrias comentar si los datos 'reales' [cuales son los rangos y sus contenidos]...
'difieren' con mis supuestos ? [y en donde... +/- exactamente] ;)

saludos,
hector.
Respuesta Responder a este mensaje
#5 Mario Rios
11/10/2006 - 23:53 | Informe spam
Hola Hector

Perdoname, no puse atencion y en {mayus} ponia { bloq mayus} por eso me
mandaba el error y ya probe el formato condicional tambien funciona muy
bien. La formula es impecable.

Donde podre aprender formulas matriciales?

La formulas (por separado) que anidas las entiendo bien, pero cuando se
convierte en matricial ya NO especificamente en
SI($B$2:$E$15=$G2,FILA($F$2:$F$15)) si me explicas, por favor.


Muchas gracias


Mario Ríos


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

... la formula me manda el siguiente mensaje #¡VALOR!.



1) no se si tomaste nota de una indicacion en la propuesta para dar
entrada a la formula...
-> toma nota de que es una formula de 'entrada matricial'
cuando se introduce/edita, se 'termina' con
{ctrl}+{mayus}+{enter}
y debe ser en una sola linea [la 'corto' por efectos de
caracteres por linea en los mensajes] :-(





=indice($f:$f,k.esimo.mayor(k.esimo.menor(si($b$2:$e$15=$g2,fila($f$2:$f$15)),fila(indirecto("1:"&contar.si($b$2:$e$15,$g2))))
*contar.si(desref($b$2:$e$2,k.esimo.menor(si($b$2:$e$15=$g2,fila($f$2:$f$15)),fila(indirecto("1:"&contar.si($b$2:$e$15,$g2))))
-2,),$h2),columna(a$1)))

2) podrias comentar si los datos 'reales' [cuales son los rangos y sus
contenidos]...
'difieren' con mis supuestos ? [y en donde... +/- exactamente] ;)

saludos,
hector.

Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida