funcion =fila(max(N10:N45))

03/01/2005 - 16:51 por teba | Informe spam
Esta función no devuelve el número de fila donde se encuentra el valor máximo
de una serie de números de la columna N. ¿Qué función puedo usar para que me
lo realice?

Preguntas similare

Leer las respuestas

#11 KL
05/01/2005 - 13:25 | Informe spam
Mira ,

Antes q nada, no creo q haya ninguna razon para q el tono de tus menajes se
ponga tan chulo ;).

Tu formula es muy simple para entender sin la explicacion tan sofisticada.
Si he metido la pata al principio ha sido por reaccionar muy rapido, y lo
siento de verdad :-(.

Y en segundo lugar, tu formula si q hace operaciones innecesarias y es facil
de demostrar.
Solo tienes q seleccionar la celda q contiene tu formula, ir a la barra de
formulas, seleccionar la formula entera y pulsar F9.
Luego modificas la formula tal como lo propongo yo y repites las operaciones
anteriores.
?Sabras decir la diferencia?

Si quieres la explicacion, es muy facil:

1) FILA(N10:N45) devuelve una matriz de 36 valores (selecciona FILA(N10:N45)
y pulsa F9)
2) COINCIDIR(MAX(N10:N45);N10:N45;0) devuelve 1 valor
3) Siento decirlo, pero la suma FILA(N10:N45) +
COINCIDIR(MAX(N10:N45);N10:N45;0) se hace 36 veces
4) Y para colmo la resta del resultado anterior y el 1 se hace 36 veces
tambien
5) Finalmente, aunque en la celda aparezca solo un numero, en realidad se
devuelven 36

Arrevederci
KL

Mira KL; mi fórmula no hace operaciones innecesarias, lo que puedes
comprobar siguiendo la lógica que hay en ella. te lo voy a explicar:
1.) Defino la lista: LISTA=RANGO("N10:N45")
2.) Veo cuantas filas hay antes de la lista: FILAS_ANT=FILA(LISTA)-1
3.) Busco el valor máximo en la lista: MÁXIMO=MAX(LISTA)
4.) Busco la posición del valor máximo en la lista:
POSICIÓN=COINCIDIR(MÁXIMO;LISTA;0)
5.) Y el resultado es:.. MÁXIMO_EN=POSICIÓN+FILAS_ANT o en una sola
formula:
MÁXIMO_EN=COINCIDIR(MAX(LISTA);LISTA;0)+FILA(LISTA)-1;
esta fórmula es para buscar el primer máximo en una lista cualquiera de la
tabla y para nuestro caso en particular sería:
=COINCIDIR(N10:N45;MAX(N10:N45);0)+FILA(N10:N45)-1
Si quieres simplificarla un poco entonces lo que tienes que hacer es
colocar la lista en la primera fila y todo quedaría de esta manera:
MÁXIMO_EN=POSICIÓN o en una sola formula:
MÁXIMO_EN=COINCIDIR(MAX(LISTA);LISTA;0); y para nuestro caso en particular
sería:
=COINCIDIR(N10:N45;MAX(N10:N45);0)
Como vez aquí siempre se le da gusto al cliente, Chao.






"KL" escribió en el mensaje
news:%
...sin embargo creo q se podria depurarla un poquito:

=FILA(N10)+COINCIDIR(MAX(N10:N45);N10:N45;0)-1

asi no hara las operaciones innecesarias de sumar el resultado de la
funcion COINCIDIR con el numero de fila de cada una de las celdas dentro
del rango N10:N45 y luego restarles el 1. De todas formas la formula es
tan rapida q la diferencia en velocidad es casi inapreciable.

:-)
Un saludo,
KL

"" wrote in message
news:%
Está peor que la primera


"KL" escribió en el mensaje
news:u%23VUM%
...o bien =FILA(N10:N45)*COINCIDIR(MAX(N10:N4516);N10:N45;0)

para ahorrarnos el -1

y es mejor q la q puse yo antes por q esta funciona en caso de q haya
mas de un numero maximo.

KL

"" wrote in message
news:
=FILA(N10:N45)+COINCIDIR(MAX(N10:N4516);N10:N45;0)-1
"teba" escribió en el mensaje
news:
Esta función no devuelve el número de fila donde se encuentra el
valor máximo
de una serie de números de la columna N. ¿Qué función puedo usar para
que me
lo realice?




















Respuesta Responder a este mensaje
#12 Willi
05/01/2005 - 15:46 | Informe spam
La diferencia es muy sencilla mira la información de la función FILA() ya
que es lo mismo
FILA(N10) que
FILA(N10: N45) O QUE
FILA(N10: N65536) ya que esta función solo devuelve el número de la primera
fila y no toma en cuenta nada más, chao

William

"KL" escribió en el mensaje
news:
Mira ,

Antes q nada, no creo q haya ninguna razon para q el tono de tus menajes
se ponga tan chulo ;).

Tu formula es muy simple para entender sin la explicacion tan sofisticada.
Si he metido la pata al principio ha sido por reaccionar muy rapido, y lo
siento de verdad :-(.

Y en segundo lugar, tu formula si q hace operaciones innecesarias y es
facil de demostrar.
Solo tienes q seleccionar la celda q contiene tu formula, ir a la barra de
formulas, seleccionar la formula entera y pulsar F9.
Luego modificas la formula tal como lo propongo yo y repites las
operaciones anteriores.
?Sabras decir la diferencia?

Si quieres la explicacion, es muy facil:

1) FILA(N10:N45) devuelve una matriz de 36 valores (selecciona
FILA(N10:N45) y pulsa F9)
2) COINCIDIR(MAX(N10:N45);N10:N45;0) devuelve 1 valor
3) Siento decirlo, pero la suma FILA(N10:N45) +
COINCIDIR(MAX(N10:N45);N10:N45;0) se hace 36 veces
4) Y para colmo la resta del resultado anterior y el 1 se hace 36 veces
tambien
5) Finalmente, aunque en la celda aparezca solo un numero, en realidad se
devuelven 36

Arrevederci
KL

Mira KL; mi fórmula no hace operaciones innecesarias, lo que puedes
comprobar siguiendo la lógica que hay en ella. te lo voy a explicar:
1.) Defino la lista: LISTA=RANGO("N10:N45")
2.) Veo cuantas filas hay antes de la lista: FILAS_ANT=FILA(LISTA)-1
3.) Busco el valor máximo en la lista: MÁXIMO=MAX(LISTA)
4.) Busco la posición del valor máximo en la lista:
POSICIÓN=COINCIDIR(MÁXIMO;LISTA;0)
5.) Y el resultado es:.. MÁXIMO_EN=POSICIÓN+FILAS_ANT o en una sola
formula:
MÁXIMO_EN=COINCIDIR(MAX(LISTA);LISTA;0)+FILA(LISTA)-1;
esta fórmula es para buscar el primer máximo en una lista cualquiera de
la tabla y para nuestro caso en particular sería:
=COINCIDIR(N10:N45;MAX(N10:N45);0)+FILA(N10:N45)-1
Si quieres simplificarla un poco entonces lo que tienes que hacer es
colocar la lista en la primera fila y todo quedaría de esta manera:
MÁXIMO_EN=POSICIÓN o en una sola formula:
MÁXIMO_EN=COINCIDIR(MAX(LISTA);LISTA;0); y para nuestro caso en
particular sería:
=COINCIDIR(N10:N45;MAX(N10:N45);0)
Como vez aquí siempre se le da gusto al cliente, Chao.






"KL" escribió en el mensaje
news:%
...sin embargo creo q se podria depurarla un poquito:

=FILA(N10)+COINCIDIR(MAX(N10:N45);N10:N45;0)-1

asi no hara las operaciones innecesarias de sumar el resultado de la
funcion COINCIDIR con el numero de fila de cada una de las celdas dentro
del rango N10:N45 y luego restarles el 1. De todas formas la formula es
tan rapida q la diferencia en velocidad es casi inapreciable.

:-)
Un saludo,
KL

"" wrote in message
news:%
Está peor que la primera


"KL" escribió en el mensaje
news:u%23VUM%
...o bien =FILA(N10:N45)*COINCIDIR(MAX(N10:N4516);N10:N45;0)

para ahorrarnos el -1

y es mejor q la q puse yo antes por q esta funciona en caso de q haya
mas de un numero maximo.

KL

"" wrote in message
news:
=FILA(N10:N45)+COINCIDIR(MAX(N10:N4516);N10:N45;0)-1
"teba" escribió en el mensaje
news:
Esta función no devuelve el número de fila donde se encuentra el
valor máximo
de una serie de números de la columna N. ¿Qué función puedo usar
para que me
lo realice?
























Respuesta Responder a este mensaje
#13 KL
05/01/2005 - 16:16 | Informe spam
"" wrote in message...
La diferencia es muy sencilla mira la información de la función FILA() ya
que es lo mismo
FILA(N10) que
FILA(N10: N45) O QUE
FILA(N10: N65536)



?Querras decir que el resultado es el mismo? porque la manera de llegar a
ese resultado es diferente. Como ya he dicho antes la difrencia en
rendimiento es minima en un equipo moderno. Sin embargo, insisto, no es lo
mismo hacer 2 operaciones matematicas o 72, de aqui la conclusion - 70
operaciones son innecesarias.

ya que esta función solo devuelve el número de la primera fila y no toma en
cuenta nada más, chao



Aqui es donde creo q te equivocas. La funcion "devuelve" y "toma en cuenta"
todas las filas del rango y a su vez la formula las procesa todas. Asimismo
la formula "devuelve" 36 resultados, de los cuales en la celda solo se
muestara el primero. Pero decir q se devuelve solamente la primera fila es
como decir q si atraves del menu Formato aplicamos "0,00" a 1.12345 el
resultado es 1.12 y no 1.12345.

Saludos,
KL
Respuesta Responder a este mensaje
#14 KL
05/01/2005 - 16:36 | Informe spam
""

La diferencia es muy sencilla mira la información de la función FILA() ya
que es lo mismo
FILA(N10) que
FILA(N10: N45) O QUE
FILA(N10: N65536)



Tenias razon !!!
suponiendo q el rango N10: N65536 tiene los valores de 1 a 65527 en orden
ascendiente:

=SUMAPRODUCTO(FILA(N10))
=SUMAPRODUCTO(FILA(N10: N45))™0
=SUMAPRODUCTO(FILA(N10: N65536))!46926583

de ahi: 10™0!46926583

Chao,
KL
Respuesta Responder a este mensaje
#15 KL
05/01/2005 - 16:41 | Informe spam
"KL" wrote in message...
suponiendo q el rango N10: N65536 tiene los valores de 1 a 65527 en orden
ascendiente:



perdon, esta hipotesis sobraba.

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