"Posiciones"

20/12/2003 - 16:29 por Luis | Informe spam
Hola a todos.

Hay alguna manera de hacer en Excel lo siguiente:

Tengo un rango de datos numéricos en [A1:A27] y quiero
saber cual de ellos es el que no ha aparecido o en su
defecto las celdas que hace que no ha salido teniendo en
cuenta el los números 1 al 9. Ejemplo:

Supongamos que el rango [A1:A27] es el siguiente:

8-7-1-1-3-3-2-9-3-2-1-1-4-6-4-1-6-1-9-5-2-3-2-1-6-9-5

pues se observa que están todos los valores del 1 al 9,
pero el que hace mas casillas que no aparece es el 8.

Lo ideal seria que me los diese ordenados de menor a
mayor "posición", o sea sería:

8 - 7 - 4 - 9 - 3 - 2 - 1 - 6 - 5

Alguna idea?

Gracias anticipadas y Felices Fiestas.

Preguntas similare

Leer las respuestas

#1 Luis
20/12/2003 - 16:38 | Informe spam
Lo siento, el ejemplo esta mal. Sería:

8 - 7 - 4 - 3 - 2 - 1 - 6 - 9 - 5

Se nota que me hace falta la formula :-).

Hola a todos.

Hay alguna manera de hacer en Excel lo siguiente:

Tengo un rango de datos numéricos en [A1:A27] y quiero
saber cual de ellos es el que no ha aparecido o en su
defecto las celdas que hace que no ha salido teniendo en
cuenta el los números 1 al 9. Ejemplo:

Supongamos que el rango [A1:A27] es el siguiente:

8-7-1-1-3-3-2-9-3-2-1-1-4-6-4-1-6-1-9-5-2-3-2-1-6-9-5

pues se observa que están todos los valores del 1 al 9,
pero el que hace mas casillas que no aparece es el 8.

Lo ideal seria que me los diese ordenados de menor a
mayor "posición", o sea sería:

8 - 7 - 4 - 9 - 3 - 2 - 1 - 6 - 5

Alguna idea?

Gracias anticipadas y Felices Fiestas.

.

Respuesta Responder a este mensaje
#2 Fernando Arroyo
20/12/2003 - 19:13 | Informe spam
Creo que lo he conseguido, pero me temo que en dos pasos, como el escritor brasileño :-))
- Pon la siguiente fórmula en la fila 1 de cualquier columna (excepto, lógicamente, en la A, que es donde se supone que están los datos):

=SI(CONTAR.SI(A$1:A$28;FILA());28-MAX((A$1:A$28=FILA())*FILA(A$1:A$28));99)

teniendo en cuenta que se trata de una fórmula matricial, por lo que tienes que introducirla mediante Control + Mayúsculas + Entrada.

- copia la celda y pégala hasta la fila 9 de la misma columna
- pon la siguiente fórmula en la fila 1 de otra columna (lo lógico sería ponerla en la columna a la derecha de la anterior):

=COINCIDIR(K.ESIMO.MAYOR(B$1:B$9;FILA());B$1:B$9;0)

- copia de nuevo la celda y pégala hasta la fila 9 de la misma columna


Creo que funciona, pero seguiré intentando hacerlo mediante una sola fórmula, si bien es cierto que lo veo difícil.
Un saludo.


Fernando Arroyo
MS MVP - Excel

PS: Ten en cuenta que si tu separador de listas fuera la coma, tendrías que sustituir los puntos y comas de ambas fórmulas con ella.



"Luis" escribió en el mensaje news:069101c3c70f$5cd055a0$
Lo siento, el ejemplo esta mal. Sería:

8 - 7 - 4 - 3 - 2 - 1 - 6 - 9 - 5

Se nota que me hace falta la formula :-).

Hola a todos.

Hay alguna manera de hacer en Excel lo siguiente:

Tengo un rango de datos numéricos en [A1:A27] y quiero
saber cual de ellos es el que no ha aparecido o en su
defecto las celdas que hace que no ha salido teniendo en
cuenta el los números 1 al 9. Ejemplo:

Supongamos que el rango [A1:A27] es el siguiente:

8-7-1-1-3-3-2-9-3-2-1-1-4-6-4-1-6-1-9-5-2-3-2-1-6-9-5

pues se observa que están todos los valores del 1 al 9,
pero el que hace mas casillas que no aparece es el 8.

Lo ideal seria que me los diese ordenados de menor a
mayor "posición", o sea sería:

8 - 7 - 4 - 9 - 3 - 2 - 1 - 6 - 5

Alguna idea?

Gracias anticipadas y Felices Fiestas.

.

Respuesta Responder a este mensaje
#3 Daniel.M
20/12/2003 - 22:03 | Informe spam
Hola,

En A1:A27, los datos
En B1, la matricial siguiente (Ctrl-May-Entrada)

=INDICE($A$1:$A$27;1-FILA($A$1:$A$27)+MAX(SI(MMULT(0+($A$1:$A$27TRANSPONER(B2:B$10));B2:B$10*0+1);0;FILA($A$1:$A$27))))

Tiene que copiar hasta B9.
En B10: nada (importante)

Saludos,

Daniel M.
Respuesta Responder a este mensaje
#4 Luis
20/12/2003 - 23:37 | Informe spam
Hola Fernando.

Lo he probado y en general funciona bien, pero según la
secuencia de datos no. Por ejemplo, esta secuencia:
1113329321414644619552321595 da como resultado:
[774632195].

O sea, es correcto pero no aparece el número 8, que no
está en la lista. En cambio si cambio algún 3 por el 7 en
la secuencia de datos, entonces si que aparece el 8 en el
resultado [874632195].

Y otra cosa, el 0 no lo tiene en cuenta.

Espero no abusar.
Un Saludo.
Luis.


Creo que lo he conseguido, pero me temo que en dos


pasos, como el escritor brasileño :-))
- Pon la siguiente fórmula en la fila 1 de cualquier


columna (excepto, lógicamente, en la A, que es donde se
supone que están los datos):

=SI(CONTAR.SI(A$1:A$28;FILA());28-MAX((A$1:A$28=FILA())


*FILA(A$1:A$28));99)

teniendo en cuenta que se trata de una fórmula


matricial, por lo que tienes que introducirla mediante
Control + Mayúsculas + Entrada.

- copia la celda y pégala hasta la fila 9 de la misma


columna
- pon la siguiente fórmula en la fila 1 de otra columna


(lo lógico sería ponerla en la columna a la derecha de la
anterior):

=COINCIDIR(K.ESIMO.MAYOR(B$1:B$9;FILA());B$1:B$9;0)

- copia de nuevo la celda y pégala hasta la fila 9 de


la misma columna


Creo que funciona, pero seguiré intentando hacerlo


mediante una sola fórmula, si bien es cierto que lo veo
difícil.
Un saludo.


Fernando Arroyo
MS MVP - Excel

PS: Ten en cuenta que si tu separador de listas fuera la


coma, tendrías que sustituir los puntos y comas de ambas
fórmulas con ella.



"Luis" escribió en


el mensaje news:069101c3c70f$5cd055a0$
Lo siento, el ejemplo esta mal. Sería:

8 - 7 - 4 - 3 - 2 - 1 - 6 - 9 - 5

Se nota que me hace falta la formula :-).

Hola a todos.

Hay alguna manera de hacer en Excel lo siguiente:

Tengo un rango de datos numéricos en [A1:A27] y quiero
saber cual de ellos es el que no ha aparecido o en su
defecto las celdas que hace que no ha salido teniendo




en
cuenta el los números 1 al 9. Ejemplo:

Supongamos que el rango [A1:A27] es el siguiente:

8-7-1-1-3-3-2-9-3-2-1-1-4-6-4-1-6-1-9-5-2-3-2-1-6-9-5

pues se observa que están todos los valores del 1 al 9,
pero el que hace mas casillas que no aparece es el 8.

Lo ideal seria que me los diese ordenados de menor a
mayor "posición", o sea sería:

8 - 7 - 4 - 9 - 3 - 2 - 1 - 6 - 5

Alguna idea?

Gracias anticipadas y Felices Fiestas.

.



.

Respuesta Responder a este mensaje
#5 Luis.
20/12/2003 - 23:45 | Informe spam
Hola Daniel.
Te comento lo mismo que a Fernando. Según que casos no
funciona bien.

Por ejemplo en la secuencia de datos:
1113329321414644619552321595 el resultado es:
[114321695] cuando debería ser:
[874632195]

Gracias por vuestra ayuda.

Luis.

Hola,

En A1:A27, los datos
En B1, la matricial siguiente (Ctrl-May-Entrada)

=INDICE($A$1:$A$27;1-FILA($A$1:$A$27)+MAX(SI(MMULT(0+


($A$1:$A$27>TRANSPONER(B2:B$10));B2:B$10*0+1);0;FILA($A$1:$A$27))))

Tiene que copiar hasta B9.
En B10: nada (importante)

Saludos,

Daniel M.


.

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