Busqueda con interpolacion

23/05/2004 - 05:12 por Amadeo Govoni | Informe spam
Estmado foro:
Estoy queriendo haver una búsqueda siguiente:

1º >Datos 1 y 47 en dos celdas distintas

Buscarlo en la siguiente tabla

la primera columna son metros
La segunda columna son grados
y las restantes son factores

1 30 12 15 14
1 35 13 14 16
1 40 15 16 18
1 45 18 19 22
1 50 21 21 23
2 30 12 15 14
2 35 13 14 16
2 40 15 16 18
2 45 18 19 22
2 50 21 21 23

La búsqueda tiene que devolver los factores correespondientes a 1 metro y 47
grados

como no existe el 47 se deberá havcer una interpolacion lineal entre la fila

1 45 18 19 22
y la fila
1 50 21 21 23

cuyo resultado sería

1 47 19.2 19.8 22.4

si no me equivoque en las cuentas

2º> Si los datos existen en la tabla como por ejemplo 2 45 que de

2 45 18 19 22


Me estoy revanando los sesos pero no encuentrpo la punta del ovillo

Espero que lo sepan interpretar y muchas gracias de antemano

Saludos

Amadeo

Preguntas similare

Leer las respuestas

#1 Daniel.M
24/05/2004 - 02:06 | Informe spam
Hola Amadeo,

Supongamos :
la tabla en A1:E10, ordernada 'ascendante' en las dos primeras columnas
no hay grados mas que 99 (o cambiamos *100 en las formulas)
el valor metros busquedo en H1
el valor grados busquedo en I1

En N1 (el mas gran valor mas pequena que H1*100 + I1):
=COINCIDIR(H1*110+I1;$A$1:$A$11*110+$B$1:$B$11)

En M1 (el porcientage mas):
=(I1-INDICE(B$1:B$11;$N1))/(INDICE(B$1:B$11;$N1+1)-INDICE(B$1:B$11;$N1))

En J1:
=INDICE(C$1:C$11;$N1)+(INDICE(C$1:C$11;$N1+1)-INDICE(C$1:C$11;$N1))*$M1

Copiar J1 hasta K1 et L1

J1:L1 contiene sus tres valores.

Nota: Importante de tener C$1:C$11 (o A$1:A$11, o C$1:C$11) en las formula :
entonces, 1 fila mas que la tabla.

Saludos,

Daniel M.


"Amadeo Govoni" wrote in message
news:
Estmado foro:
Estoy queriendo haver una búsqueda siguiente:

1º >Datos 1 y 47 en dos celdas distintas

Buscarlo en la siguiente tabla

la primera columna son metros
La segunda columna son grados
y las restantes son factores

1 30 12 15 14
1 35 13 14 16
1 40 15 16 18
1 45 18 19 22
1 50 21 21 23
2 30 12 15 14
2 35 13 14 16
2 40 15 16 18
2 45 18 19 22
2 50 21 21 23

La búsqueda tiene que devolver los factores correespondientes a 1 metro y 47
grados

como no existe el 47 se deberá havcer una interpolacion lineal entre la fila

1 45 18 19 22
y la fila
1 50 21 21 23

cuyo resultado sería

1 47 19.2 19.8 22.4

si no me equivoque en las cuentas

2º> Si los datos existen en la tabla como por ejemplo 2 45 que de

2 45 18 19 22


Me estoy revanando los sesos pero no encuentrpo la punta del ovillo

Espero que lo sepan interpretar y muchas gracias de antemano

Saludos

Amadeo








Respuesta Responder a este mensaje
#2 Amadeo Govoni
24/05/2004 - 05:07 | Informe spam
Estimado
Algo está mal
Recisar la formula en N1
=COINCIDIR(H1*110+I1;$A$1:$A$11*110+$B$1:$B$11)

con los datos 1 y 47 da como resultado #N/A

Espero contestacion y gracias por tu preocupacion

saludos

Amadeo

"Daniel.M" escribió en el mensaje
news:
Hola Amadeo,

Supongamos :
la tabla en A1:E10, ordernada 'ascendante' en las dos primeras


columnas
no hay grados mas que 99 (o cambiamos *100 en las formulas)
el valor metros busquedo en H1
el valor grados busquedo en I1

En N1 (el mas gran valor mas pequena que H1*100 + I1):
=COINCIDIR(H1*110+I1;$A$1:$A$11*110+$B$1:$B$11)

En M1 (el porcientage mas):
=(I1-INDICE(B$1:B$11;$N1))/(INDICE(B$1:B$11;$N1+1)-INDICE(B$1:B$11;$N1))

En J1:
=INDICE(C$1:C$11;$N1)+(INDICE(C$1:C$11;$N1+1)-INDICE(C$1:C$11;$N1))*$M1

Copiar J1 hasta K1 et L1

J1:L1 contiene sus tres valores.

Nota: Importante de tener C$1:C$11 (o A$1:A$11, o C$1:C$11) en las formula


:
entonces, 1 fila mas que la tabla.

Saludos,

Daniel M.


"Amadeo Govoni" wrote in message
news:
> Estmado foro:
> Estoy queriendo haver una búsqueda siguiente:
>
> 1º >Datos 1 y 47 en dos celdas distintas
>
> Buscarlo en la siguiente tabla
>
> la primera columna son metros
> La segunda columna son grados
> y las restantes son factores
>
> 1 30 12 15 14
> 1 35 13 14 16
> 1 40 15 16 18
> 1 45 18 19 22
> 1 50 21 21 23
> 2 30 12 15 14
> 2 35 13 14 16
> 2 40 15 16 18
> 2 45 18 19 22
> 2 50 21 21 23
>
> La búsqueda tiene que devolver los factores correespondientes a 1 metro


y 47
> grados
>
> como no existe el 47 se deberá havcer una interpolacion lineal entre la


fila
>
> 1 45 18 19 22
> y la fila
> 1 50 21 21 23
>
> cuyo resultado sería
>
> 1 47 19.2 19.8 22.4
>
> si no me equivoque en las cuentas
>
> 2º> Si los datos existen en la tabla como por ejemplo 2 45 que


de
>
> 2 45 18 19 22
>
>
> Me estoy revanando los sesos pero no encuentrpo la punta del ovillo
>
> Espero que lo sepan interpretar y muchas gracias de antemano
>
> Saludos
>
> Amadeo
>
>
>
>
>
>
>
>


Respuesta Responder a este mensaje
#3 Daniel.M
24/05/2004 - 07:17 | Informe spam
Buenas Tardes,

Recisar la formula en N1
=COINCIDIR(H1*110+I1;$A$1:$A$11*110+$B$1:$B$11)
con los datos 1 y 47 da como resultado #N/A



En este caso, es una formula matriciale (tipo array): tiene que finalizar la
introducción con Ctrl-May-Entr.

Saludos,

Daniel M.
Respuesta Responder a este mensaje
#4 Héctor Miguel
24/05/2004 - 07:46 | Informe spam
hola, chicos !

Daniel.M escribio en el mensaje
... es una formula matriciale (tipo array): tiene que finalizar la introduccion con Ctrl-May-Entr.

Amadeo escribio en el mensaje
=COINCIDIR(H1*110+I1;$A$1:$A$11*110+$B$1:$B$11)
con los datos 1 y 47 da como resultado #N/A





Daniel:
hay una 'limpieza' =>magistral<= en la solucion que has propuesto... ¡ fe-li-ci-ta-cio-nes !!! ;)
si se hace una [ligera] 'modificacion'... se podria 'trabajar' [inclusive] con textos...
de => =Coincidir(H1*110+I1;$A$1:$A$11*110+$B$1:$B$11)
a => =Coincidir(H1&I1;$A$1:$A$11&$B$1:$B$11)

Amadeo:
considerando que el 'arreglo' de los datos [supuesto por Daniel en la respuesta] fuera... 'tal-cual'...
la unica manera en que he podido 'reproducir' el valor de error '#N/A' es...
cuando [alg]uno de los datos que se busca [1 y/o 47] es =>inferior<= al 'minimo registrado' en el 'rango dado'

saludos,
hector.
Respuesta Responder a este mensaje
#5 Daniel.M
24/05/2004 - 09:54 | Informe spam
Hola Hector,

Daniel:
hay una 'limpieza' =>magistral<= en la solucion que has propuesto... ¡


fe-li-ci-ta-cio-nes !!! ;)

Gracias, Hector. :-)

si se hace una [ligera] 'modificacion'... se podria 'trabajar' [inclusive] con


textos...
de => =Coincidir(H1*110+I1;$A$1:$A$11*110+$B$1:$B$11)
a => =Coincidir(H1&I1;$A$1:$A$11&$B$1:$B$11)



Si. Me gusta la idea de una variacion inclusiva. Con _texto_, un peligrito (se
dice?) es de tener 2 filas como asi:

A B
1 51
15 1

H1&I1 va a producir el mismo texto concatenado.

Es la razon par la cuale, me gustaria mas de usar de un 'separador' como "/",
por ejemplo:
=Coincidir(H1&"/"&I1;$A$1:$A$11&"/"&$B$1:$B$11) ' una formula matriciale

Amadeo:
considerando que el 'arreglo' de los datos [supuesto por Daniel en la


respuesta] fuera... 'tal-cual'...
la unica manera en que he podido 'reproducir' el valor de error '#N/A' es...
cuando [alg]uno de los datos que se busca [1 y/o 47] es =>inferior<= al


'minimo registrado' en el 'rango dado'

Gracias por avisar. Y verdaderamente, la interpolacion con UN valor no significa
nada. Obtenemos un error (#REF!) tambien si los 'valores' de datos (2 y 51 en
H1:I1 por ejemplo) son superiores al ultimo valor (2 y 50 en la tabla).

Salutaciones cordiales,

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