Encontrar un valor de acuerdo a varias condiciones

Tengo un rango de datos de dos columnas, digamos A y B. En la columna A registro fechas y en la B precios.
Necesito en primer lugar, buscar para un periodo determinado tanto el precio minimo como el maximo que se dieron en ese lapso.
En segundo lugar, que la fecha correspondiente al minimo encontrado se compare con la del precio maximo y si es anterior, se escriba en otra celda "Subio" si por el contrario, si la fecha correspondiente al precio maximo encontrado es anterior a la del minimo, en esa celda se escriba "Bajo".

Respuesta
2

Fíjate si esto aporta algo más

https://macrosenexcel.com/como-determinar-el-minimo-valor-de-una

https://youtu.be/gXKcaqOq0ww

https://macrosenexcel.com/como-determinar-el-maximo-valor-de-una

https://macrosenexcel.com/como-determinar-el-maximo-valor 

Si requieres busca entre periodos mira

https://youtu.be/dRV0jZVK61w

Mas sobre busquedas entre fecha y fecha

https://www.youtube.com/playlist?list=PLdK9H5dMIfQiXmqRgvQzX1fSN2BHD-EeY

2 respuestas más de otros expertos

Respuesta
2

Va un ejemplo para ver si es lo que esta buscando, las formula para los valores son:

VALOR INICIAL: =BUSCARV(D2,A4:B6,2)   VALOR FINAL:  =BUSCARV(E2,A4:B6,2)

TENDENCIA:  =SI(D4<E4,"Subió",SI(D4>E4,"Bajó",SI(D4=E4,"Sin Variacion")))

Si el separador de formulas en su país es punto y coma (;), sustituya las comas (,) por punto y coma(;)

Gracias por la oportuna respuesta y por dedicar su tiempo a dar ayuda. La solución que plantea es funcional y perfectamente viable, no obstante había pensado en solo una fórmula, ya que tengo la hoja configurada para que funcione una sola fórmula en una celda única. Al momento de enviar la pregunta tuve problemas para subir una imagen, así que no pude explicarme mejor, ahora si pude subirla. Lo que busco es que en la columna E y en la celda respectiva se muestre el resultado de la fórmula, sea Subió o Bajo. Como puede observarse (recuadro) ya el mínimo y el máximo están calculados mediante las fórmulas =Max(B10:B16) y Min(B10:B16), lo que no he podido hacer es asociar esos valores con las fechas y condicionar el resultado a la fecha más antigua. Algo así como que el mínimo ocurrió el 24/04 y el máximo el 29/04, entonces subió y si es a la inversa, entonces bajo

Lo que no me queda claro es como establecer el periodo a comparar, en su ejemplo son 7 días del periodo, ¿así se hará siempre el periodo a comparar?

El periodo a comparar sera siempre de 7 días, lo que es variable es el rango. Es decir, puede ser que el periodo sea desde el 24/04 hasta el 30/04 o desde el 16/04 hasta el 23/04

Le mando un archivo de acuerdo a lo que entendí, lo del rango de fechas de la par con la fórmula en la columna E que son en intervalos de 7 registros del inicial al final, si pone un ejemplo más preciso para establecer el rango de fecha en el archivo para que yo pueda ver la forma de integrarlo en la fórmula.

https://drive.google.com/open?id=1f_TZtRd6YuxUXq5UatFSVtaZHlfElKlH 

Respuesta
2

En el siguiente ejemplo te pongo los valores mínimo y máximo encontrados, las fechas correspondientes a esos valores y la comparación de las fechas. En total 5 fórmulas:

Aquí las fórmulas:

Estas fórmulas son matriciales, para aceptarlas debes presionar al mismo tiempo las teclas:

Control + Shift + Enter

=MIN(SI(($A$2:$A$21>=E$2)*($A$2:$A$21<=E$3),($B$2:$B$21)))

=MAX(SI(($A$2:$A$21>=E$2)*($A$2:$A$21<=E$3),($B$2:$B$21)))

=INDICE($A$2:$A$21,MAX(SI(($A$2:$A$21>=E$2)*($A$2:$A$21<=E$3)*($B$2:$B$21=$E4),FILA($A$2:$A$21)))-1)

=INDICE($A$2:$A$21,MAX(SI(($A$2:$A$21>=E$2)*($A$2:$A$21<=E$3)*($B$2:$B$21=$E5),FILA($A$2:$A$21)))-1)

La siguiente es una fórmula normal:

=SI(E6<E7,"Subió","Bajó")

En la imagen puedes ver en cuál celda va cada fórmula.

Gracias por la oportuna respuesta y por dedicar su tiempo a dar ayuda. La solucion que plantea es funcional y perfectamente viable, no obstante habia pensado en solo una formula, ya que tengo la hoja configurada para que funcione una sola formula en una celda unica. Al momento de enviar la pregunta tuve problemas para subir una imagen, asi que no pude explicarme mejor, ahora si pude subirla. Lo que busco es que en la columna E y en la celda respectiva se muestre el resultado de la formula, sea Subio o Bajo. Como puede observarse (recuadro) ya el minimo y el maximo estan calculados mediante las formulas =Max(B10:B16) y Min(B10:B16), lo que no he podido hacer es asociar esos valores con las fechas y condicionar el resultado a la fecha mas antigua. Algo asi como que el minimo ocurrio el 24/04 y el maximo el 29/04, entonces subio y si es a la inversa, entonces bajo,

Ahora no entiendo, no se ven en las columnas en la imagen. voy a suponer que son las columnas A,B,C,D y E.

No entiendo qué tienes en las columnas C y D. Sin en las celdas de la columna C y D tienes las fórmulas Min y Max, entonces tienes más de una fórmula.

En primer lugar, buscar para un periodo determinado tanto el precio minimo como el maximo

Esa es tu primer petición, no entiendo de qué forma vas a establecer el "periodo determinado".

Ahora es más confuso, puedes comentar:

- ¿Vas a establecer un periodo?

- ¿El periodo es variable va a estar en algunas celdas o en la fórmula?

- ¿Si no hay periodo entonces el rango de celdas a revisar es fijo?

- Siempre va a ser este rango: Max(B10:¿B16)?

- ¿Van a existir las columnas C y D o solamente es para explicar el ejemplo?


En fin, ahora tengo más dudas que respuestas, si pudieras explicarlo nuevamente con ejemplos.

En rango no sera siempre B10:B16, puede ser A1:A6, por ejemplo, o cualquier otro, siempre que represente un periodo de 7 días. Por lo que este rango no sera fijo sino variable
A modo de ejemplo resalte el periodo que va desde el 24/04 al 30/04. Siempre serán 7 días. Pero También puede ser del 23/04 al 29/04, es decir, cambia el rango de celdas. Por eso,
en E1584 iría la fórmula que hace el calculo para el periodo 24/04 a 30/04 y en E1583 iría la fórmula para el periodo 23/04 a 29/04, copiándose para el resto de las celdas,
de manera que sea siempre un periodo de 7 días.
El periodo seria calculado en la fórmula, de allí la solicitud de consulta, ya que no pude hacerlo, lo que si puede estar fuera de la fórmula es el calculo del máximo y el mínimo,
por tanto las columnas C y DE siempre existirán
Ciertamente, la primera petición se refería a establecer el "periodo determinado", pero ahora veo que fue mal planteada la situación, ya que esa parte ya estaba resuelta.
Tratare de ser más preciso:
Lo que busco en una fórmula para la celda E1584, que pueda ser copiada en forma descendente a partir de E1583 que trabaje así: busca el valor mínimo en el rango B1578:B1584,
busca en ese mismo rango el valor máximo (esta parte ya esta hecha), luego busca la fecha que corresponde a cada valor y compara para saber cual es el más antiguo, si la fecha
es la que corresponde al valor mínimo, entonces subio; si la fecha más antigua corresponde al valor máximo, entonces bajo.El resultado de la fórmula que iría en E1584

En E1584 iría la fórmula que hace el calculo para el periodo 24/04 a 30/04 y en E1583 iría la fórmula para el periodo 23/04 a 29/04, copiándose para el resto de las celdas,
de manera que sea siempre un periodo de 7 días.

Entonces tendrías fórmulas en toda la columna E.

Si el cálculo es para los 7 días anteriores, entonces la fórmula deberá llegar hasta la fila 8, si la pones más abajo enviará error #¡REF!


Partiendo de que en C8 y D8 tienes fórmulas así:

=MAX(B2:B8)

=MIN(B2:B8)

Entonces en E8 pon la siguiente fórmula y la copias hacia abajo:

=SI(INDICE(A2:A8, COINCIDIR(D8, B2:B8, 0))<INDICE(A2:A8, COINCIDIR(C8, B2:B8, 0)),"Subió","Bajó")

Nota: Cambia a punto y coma ( ; ) si lo utilizas como separador de argumentos.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas