Extraer datos

06/10/2005 - 21:10 por José A. Castrejón | Informe spam
Hola Buenas tardes a todos; Hace poco Hector Miguel me dio la siguiente
formula:
=INDICE(A2:A4,COINCIDIR(MAX(B2:B4),B2:B4,0))

esta formula extrae el nombre del cliente con mayores ventas
A B C D

1 Cliente Vtas
2 1 100
3 2 500
4 3 350

Y el resultado es el cliente No. 2

Ahora quisiera gregar algo más a esto, teniendo los mismos datos pero con 1
col. mas

A B C D E F

1 Cliente Vtas Mes
2 1 100 Junio
3 2 500 Mayo
4 3 350 Junio

Quisiera obtener el nombre del cliente con mayores ventas del mes de Junio,
el cual seria el cliente 3 segun los datos anteriores.
No tengo los datos ordenados por mes, pues el archivo llega totalmente en
desorden, ¿se puede hacer esto sin tener un orden determinado y sin recurrir
a macros?
Quiero poner en una celda el nombre del mes (por ej. en F1) y obtener el
dato deseado.
Gracias por su ayuda

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
06/10/2005 - 22:37 | Informe spam
hola, José !

... la siguiente formula: =INDICE(A2:A4,COINCIDIR(MAX(B2:B4),B2:B4,0))
... extrae el nombre del cliente con mayores ventas
1 Cliente Vtas
2 1 100
3 2 500
4 3 350
... el resultado es el cliente No. 2
... quisiera... teniendo los mismos datos pero con 1 col. mas
1 Cliente Vtas Mes
2 1 100 Junio
3 2 500 Mayo
4 3 350 Junio
... obtener el nombre del cliente con mayores ventas del mes de Junio
No tengo los datos ordenados... hacer esto sin tener un orden determinado y sin recurrir a macros?
... poner en una celda el nombre del mes (por ej. en F1) y obtener el dato deseado.



op1: una formula matricial [ya sabes, al introducirla/editarla se termina con ctrl+mayus+enter]
=indice(a2:a4,coincidir(max(b2:b4*(c2:c4ñ)),b2:b4*(c2:c4ñ),0))

op2: la quasi-misma formula pero no con entrada matricial
=indice(a2:a4,sumaproducto(1*coincidir(max(b2:b4*(c2:c4ñ)),b2:b4*(c2:c4ñ))),0)

saludos,
hector.
Respuesta Responder a este mensaje
#2 José A. Castrejón
08/10/2005 - 04:45 | Informe spam
Guau , Gracias, como siempre funciono de maravilla
Saludos

"Héctor Miguel" escribió:

hola, José !

> ... la siguiente formula: =INDICE(A2:A4,COINCIDIR(MAX(B2:B4),B2:B4,0))
> ... extrae el nombre del cliente con mayores ventas
> 1 Cliente Vtas
> 2 1 100
> 3 2 500
> 4 3 350
> ... el resultado es el cliente No. 2
> ... quisiera... teniendo los mismos datos pero con 1 col. mas
> 1 Cliente Vtas Mes
> 2 1 100 Junio
> 3 2 500 Mayo
> 4 3 350 Junio
> ... obtener el nombre del cliente con mayores ventas del mes de Junio
> No tengo los datos ordenados... hacer esto sin tener un orden determinado y sin recurrir a macros?
> ... poner en una celda el nombre del mes (por ej. en F1) y obtener el dato deseado.

op1: una formula matricial [ya sabes, al introducirla/editarla se termina con ctrl+mayus+enter]
=indice(a2:a4,coincidir(max(b2:b4*(c2:c4ñ)),b2:b4*(c2:c4ñ),0))

op2: la quasi-misma formula pero no con entrada matricial
=indice(a2:a4,sumaproducto(1*coincidir(max(b2:b4*(c2:c4ñ)),b2:b4*(c2:c4ñ))),0)

saludos,
hector.



Respuesta Responder a este mensaje
#3 José A. Castrejón
10/10/2005 - 06:40 | Informe spam
Hola de nuevo, revisando las 2 opciones de formula, me di cuenta de que la
formula matricial funciona bien pero la otra no. La segunda me da el ultimo
valor no hace el recalculo !
¿Cual es la diferencia? ¿Que es una formula matricial? ¿como funciona?

sdos


"Héctor Miguel" escribió:

hola, José !

> ... la siguiente formula: =INDICE(A2:A4,COINCIDIR(MAX(B2:B4),B2:B4,0))
> ... extrae el nombre del cliente con mayores ventas
> 1 Cliente Vtas
> 2 1 100
> 3 2 500
> 4 3 350
> ... el resultado es el cliente No. 2
> ... quisiera... teniendo los mismos datos pero con 1 col. mas
> 1 Cliente Vtas Mes
> 2 1 100 Junio
> 3 2 500 Mayo
> 4 3 350 Junio
> ... obtener el nombre del cliente con mayores ventas del mes de Junio
> No tengo los datos ordenados... hacer esto sin tener un orden determinado y sin recurrir a macros?
> ... poner en una celda el nombre del mes (por ej. en F1) y obtener el dato deseado.

op1: una formula matricial [ya sabes, al introducirla/editarla se termina con ctrl+mayus+enter]
=indice(a2:a4,coincidir(max(b2:b4*(c2:c4ñ)),b2:b4*(c2:c4ñ),0))

op2: la quasi-misma formula pero no con entrada matricial
=indice(a2:a4,sumaproducto(1*coincidir(max(b2:b4*(c2:c4ñ)),b2:b4*(c2:c4ñ))),0)

saludos,
hector.



Respuesta Responder a este mensaje
#4 Héctor Miguel
10/10/2005 - 07:56 | Informe spam
hola, José !

... revisando las 2 opciones de formula... la ... matricial funciona bien
... la otra... me da el ultimo valor no hace el recalculo !
Cual es la diferencia? Que es una formula matricial? como funciona?



1) tienes razon... tengo un error en la 'transcripcion' de la formula...
[se me 'chispotio' el argumento ->,0<- para indicarle a coincidir que busque 'exacto'] :-((
[perdon y]... modificala...
de -> =indice(a2:a4,sumaproducto(1*coincidir(max(b2:b4*(c2:c4ñ)),b2:b4*(c2:c4ñ))),0)
a -> =indice(a2:a4,sumaproducto(1*coincidir(max(b2:b4*(c2:c4ñ)),b2:b4*(c2:c4ñ),0)))

2) la diferencia entre una formula DE ENTRADA 'matricial' [ctrl+mayus+enter]... y una formula 'normal'...
es que la primera es -ligeramente- mas 'corta' PERO... consume/requiere -ligeramente- mas 'recursos'
-> a veces no se pueden 'evitar/sustituir/...' [aunque como en este caso, AMBAS 'trabajan' con matrices] :))

-> encontraras una explicacion mas detallada al respecto en... http://www.cpearson.com/excel/array.htm

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