jerarquia (continuacion)

07/04/2005 - 16:36 por Anonimo | Informe spam
Quiero aplicar la función jerarquia a un rango de celdas
(NO CONTIGUAS) y como parece que la función jerarquia no
admite rangos de celdas no contiguos, se me ha ocurrido
multiplicar la fila por un vector fila de 0 y 1, de tal
forma que obtengo un nuevo vector fila con sólo los valores
que me interesan.

Defino el vector fila con un Nombre (menu insertar,
nombres) y defino otro vector fila, que llamo
VectorProducto, como producto del vector anterior y del
rango de la fila de la hoja de cálculo. Hasta aquí todo
correcto, pero cuando utilizo la formula:

=jerarquia(B5;VectorProducto)

me sale error #VALOR.

Si cargo VectorProducto en celdas (o examino su valor con
pf9) tiene los datos correctos, sin embargo, en la formula
de jerarquia, vectorproducto no tiene datos (concretamente
tiene el error #VALOR.

¿Alguien puede aclarar el motivo o/y resolver el problema?
Admito otros enfoques para resolver el problema.
Gracias por adelantado.
 

Leer las respuestas

#1 KL
07/04/2005 - 17:52 | Informe spam
Hola anonimo,

Al parecer a la funcion JERARQUIA no le gustan las matrices sino las
referencias. Unas cuantas ideas sponiendo que trabajas con rangos/matrices
horizontales (si no, habria que modificar algunas cosas):

1) Al multiplicar tu rango, digamos $A$1:$G$1 (que contiene los valores,
digamos {2;6;8;9;11;33;4}) por una matriz tipo {1;0;0;0;1;0;1}, obtendras:
{2;0;0;0;11;0;4}. Suponiendo que fuese posible aplicarle la funcion
JERARQUIA, el ranking que obtendrias seria 2 - rank 5,11- rank 7, 4- rank 6.
El 0 se comeria los primeros 4 puestos. Creo que no es lo que buscas.

2) Dicho lo anterior you recomendaria que obtengas la matriz de la siguiente
manera:

=SI($A$1:$G$1*{1;0;0;0;1;0;1},$A$1:$G$1)

asi obtendras {2;FALSO;FALSO;FALSO;11;FALSO;4} y como FALSO no interfiere en
el ranking, solo se van a comparar los valores numericos.

3) Ahora, dado que no podemos (creo yo) usar la funcion JERARQUIA, podriamos
intentar usar la siguiente formula para sacar el ranking:

=SI(ESERROR(COINCIDIR(A1;matriz;0));"";COLUMNAS(matriz)+1-SUMAPRODUCTO(--(A1<=matriz)))

y copiamos la formula en horizontal atraves de todo el rango evaluado.

Nota: Si tuvieramos que trabajar con rangos/matrizes verticales, deberiamos
usar la funcion FILAS() no COLUMNAS().

Aqui te pongo un fichero de musetra:
http://www.telefonica.net/web/kl/Jerarquia.xls

Saludos,
KL


wrote in message
news:0beb01c53b7f$32349780$
Quiero aplicar la función jerarquia a un rango de celdas
(NO CONTIGUAS) y como parece que la función jerarquia no
admite rangos de celdas no contiguos, se me ha ocurrido
multiplicar la fila por un vector fila de 0 y 1, de tal
forma que obtengo un nuevo vector fila con sólo los valores
que me interesan.

Defino el vector fila con un Nombre (menu insertar,
nombres) y defino otro vector fila, que llamo
VectorProducto, como producto del vector anterior y del
rango de la fila de la hoja de cálculo. Hasta aquí todo
correcto, pero cuando utilizo la formula:

=jerarquia(B5;VectorProducto)

me sale error #VALOR.

Si cargo VectorProducto en celdas (o examino su valor con
pf9) tiene los datos correctos, sin embargo, en la formula
de jerarquia, vectorproducto no tiene datos (concretamente
tiene el error #VALOR.

¿Alguien puede aclarar el motivo o/y resolver el problema?
Admito otros enfoques para resolver el problema.
Gracias por adelantado.

Preguntas similares