Interpolacion Lineal Matricial

16/02/2007 - 18:23 por Lucas | Informe spam
Hola,
hace tiempo me pasaron una formula muy buena para interpolar linealmente:
=PRONOSTICO(D6,DESREF($B$3:$B$8,COINCIDIR(D6,$B$3:$B$8,1)-1,COINCIDIR(D$1,$D$1:$AA$1,0),2,1),DESREF(B$3:$B$8,COINCIDIR(D6,$B$3:$B$8,1)-1,0,2,1)).

Estoy tratando de usar esta formula con sentido matricial, es decir, dentro
de un sumaproducto con condiciones, por el ejemplo:

{=SUMAPRODUCTO((Base!$B$2:$B$20=$A2)*(Base!$F$2:$F$20<=D$1)*(Base!$G$2:$G$20>D$1)*PRONOSTICO((Base!$R$2:$R$20-D$1),DESREF($B$3:$B$8,COINCIDIR((Base!$R$2:$R$20-D$1),$B$3:$B$8,1)-1,COINCIDIR(D$1,$D$1:$AA$1,0),2,1),DESREF($B$3:$B$8,COINCIDIR((Base!$R$2:$R$20-D$1),$B$3:$B$8,1)-1,0,2,1)))}

El problema es que no me funciona (#!NUM).
Alguien sabe como lo puedo utilizar?
Gracias

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
17/02/2007 - 05:10 | Informe spam
hola, Lucas !

1) observaciones sobre la funcion sumaproducto(...)
a) es requisito que las 'matrices' [y/o los rangos] tengan las mismas 'dimensiones' [mismo numero de filas/columnas]
b) con la forma 'primaria' de uso que le das, devolvera -unicamente- la 'cuenta' de los elementos que cumplan los 3 criterios:
1.- Base!$B$2:$B$20=$A2 2.- Base!$F$2:$F$20<=D$1 3.- Base!$G$2:$G$20>D$1
c) si la 'intencion' [supuesta] anterior es correcta... no requiere de una 'entrada matricial'... -> {ctrl}+{shift}+{enter} :))
d) el siguiente 'elemento' para las matrices del sumaproducto [la funcion pronostico(...)] ya NO TIENE el mismo numero de filas :-((
-> este 'punto' [que pareciera no ser correcto desde 'mi apreciacion']... te lo explico en la siguiente observacion
-> solucion ?... -> deja FUERA del sumaproducto la funcion pronostico

2) observaciones sobre la funcion pronostico(...)
a) necesita -solamente- DOS 'puntos' [rangos o celdas] para ubicar un valor 'intermedio' para hacer la interpolacion...
OJO: por 'esto' es que ya no contiene el mismo numero de 'elementos' para que pueda 'funcionar' dentro del sumaproducto ;)
b) no me queda muy claro el 'por que' al primer argumento le 'restas' el contenido de 'D$1'
c) hay mas... pero me gustaria si mejor...

3) podrias exponer cual es el 'sentido/objetivo/...' de la operacion que intentas hacer ?
ahhh... y no se te olviden los detalles que pudieran quedarse 'en el tintero' [p.e.]
- cual es el rango y el tipo de datos de la tabla donde se busca un valor intermadio para la interpolacion ?
- que tipo de datos contienen los rangos de la funcion sumaproducto ?
- ya sabes... los detalles que no se alcazan a 'ver'... [desde este lado del mensaje] :))

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

__ la consulta original __
hace tiempo me pasaron una formula muy buena para interpolar linealmente:
=PRONOSTICO(D6,DESREF($B$3:$B$8,COINCIDIR(D6,$B$3:$B$8,1)-1,COINCIDIR(D$1,$D$1:$AA$1,0),2,1),DESREF(B$3:$B$8,COINCIDIR(D6,$B$3:$B$8,1)-1,0,2,1)).
Estoy tratando de usar esta formula con sentido matricial, es decir, dentro de un sumaproducto con condiciones, por el ejemplo:
{=SUMAPRODUCTO((Base!$B$2:$B$20=$A2)*(Base!$F$2:$F$20<=D$1)*(Base!$G$2:$G$20>D$1)*PRONOSTICO((Base!$R$2:$R$20-D$1),DESREF($B$3:$B$8,COINCIDIR((Base!$R$2:$R$20-D$1),$B$3:$B$8,1)-1,COINCIDIR(D$1,$D$1:$AA$1,0),2,1),DESREF($B$3:$B$8,COINCIDIR((Base!$R$2:$R$20-D$1),$B$3:$B$8,1)-1,0,2,1)))}
El problema es que no me funciona (#!NUM)... como lo puedo utilizar?
Respuesta Responder a este mensaje
#2 Héctor Miguel
18/02/2007 - 06:55 | Informe spam
hola [de nuevo], Lucas !

... me pasaron una formula muy buena para interpolar linealmente: [...]
Estoy tratando de usar esta formula con sentido matricial, es decir, dentro de un sumaproducto con condiciones [...]



aunque 'parece' resultar +/- claro que no se trata de una interpolacion doble/multiple... -?-
me sigue 'intrigando' que es lo que -realmente- buscas obtener como resultado de la formula -?-

a) una interpolacion multiplicada por el numero de filas donde coinciden las 3 condiciones ?
b) una suma de interpolaciones de las filas donde coinciden las 3 condiciones ?
c) una interpolacion utilizando solo los valores de una tabla donde coinciden las 3 condiciones de x_fila/s ?
[omitiendo los valores de 'X' y 'Y' de las filas donde no coinciden las 3 condiciones] -???-
d) otro tipo de interpolacion/operacion/... -?-

saludos,
hector.
Respuesta Responder a este mensaje
#3 Lucas
19/02/2007 - 15:35 | Informe spam
Hector, muchas gracias por tu ayuda y disposición.
Disculpa la poca claridad del ejemplo, voy a tratar de que se entienda lo
que deseo lograr. En realidad la formula es:

=SUMAPRODUCTO((Base!$B$2:$B$20=$A2)*(Base!$F$2:$F$20<=D$1)*(Base!$G$2:$G$20>D$1)*Base!$D$2:$D$20*PRONOSTICO((Base!$R$2:$R$20-D$1),DESREF(Precios!$B$3:$B$8,COINCIDIR((Base!$R$2:$R$20-D$1),Precios!$B$3:$B$8,1)-1,COINCIDIR(D$1,Precios!$D$1:$AA$1,0),2,1),DESREF(Precios!$B$3:$B$8,COINCIDIR((Base!$R$2:$R$20-D$1),Precios!$B$3:$B$8,1)-1,0,2,1)))

Lo que quiero es que si cumple con las tres condiciones me haga el producto
entre la columna $D y la interpolación que se obtiene del valor X igual a
(Base!$R$2:$R$20-D$1) a partir de los valores a interpolar que se encuentra
en la hoja precios.
Ojalá haya sido mas claro porque la solución me salvaría de un paso bastante
engorroso. Si quieres puedo enviarte el ejemplo por algun medio.
Gracias nuevamente.
Saludos
Lucas




"Héctor Miguel" escribió:

hola [de nuevo], Lucas !

> ... me pasaron una formula muy buena para interpolar linealmente: [...]
> Estoy tratando de usar esta formula con sentido matricial, es decir, dentro de un sumaproducto con condiciones [...]

aunque 'parece' resultar +/- claro que no se trata de una interpolacion doble/multiple... -?-
me sigue 'intrigando' que es lo que -realmente- buscas obtener como resultado de la formula -?-

a) una interpolacion multiplicada por el numero de filas donde coinciden las 3 condiciones ?
b) una suma de interpolaciones de las filas donde coinciden las 3 condiciones ?
c) una interpolacion utilizando solo los valores de una tabla donde coinciden las 3 condiciones de x_fila/s ?
[omitiendo los valores de 'X' y 'Y' de las filas donde no coinciden las 3 condiciones] -???-
d) otro tipo de interpolacion/operacion/... -?-

saludos,
hector.



Respuesta Responder a este mensaje
#4 Héctor Miguel
19/02/2007 - 17:37 | Informe spam
hola, Lucas !

... En realidad la formula es:
=SUMAPRODUCTO((Base!$B$2:$B$20=$A2)*(Base!$F$2:$F$20<=D$1)*(Base!$G$2:$G$20>D$1)*Base!$D$2:$D$20*PRONOSTICO((Base!$R$2:$R$20-D$1),DESREF(Precios!$B$3:$B$8,COINCIDIR((Base!$R$2:$R$20-D$1),Precios!$B$3:$B$8,1)-1,COINCIDIR(D$1,Precios!$D$1:$AA$1,0),2,1),DESREF(Precios!$B$3:$B$8,COINCIDIR((Base!$R$2:$R$20-D$1),Precios!$B$3:$B$8,1)-1,0,2,1)))

Lo que quiero es que si cumple con las tres condiciones me haga el producto entre la columna $D
y la interpolacion... del valor X igual a (Base!$R$2:$R$20-D$1) a partir de los valores a interpolar que se encuentra en la hoja precios...
... puedo enviarte el ejemplo por algun medio.



quitando el 'NO...SPAM...PLS' y los espacios, puedes enviarme una copia de tu archivo [en ZIP plis] a:
NO hemiordi SPAM @ PLS hotmail.com

saludos,
hector.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida