Obtener un valor de un rango

Hola amigos, en la siguiente hoja requiero introducir un valor, por ejemplo en la celda D2 para que me devuelva en H2 el valor que corresponde según el rango A1:B14. Esto puedo hacerlo con la función BUSCARV, pero si el valor no es coincidente con los mostrados en el rango A1:B14, me devuelve el valor inferior inmediato al introducido en D2, y lo que quiero es que muestre el valor superior. Si introduzco 182 en D4, me devuelve 15 y lo que quiero es que me devuelva 45. ¿Hay alguna forma de hacerlo?... Gracias de antemano

1 respuesta

Respuesta
1
Creo que esta fórmula te serviría:
=si(d4=buscarv(d4;a1:b14;1);buscarv(d4;a1:b14;2);buscarv(d4;indice(a1:b14;coincidir(d4;a1:b14;1)+1);1))
Si quieres que al escribir un número mayor de 420 te salga el último número en vez de un error sólo tendrías que incluir esto en:
=si(d4>420;buscarv(d4;a1:b14;2);formula_escrita_arriba)
Gracias por responder tan rapido, si es la misma pregunta, solo que la primera vez me equivoque y no salio la imagen. En cuanto a tu respuesta no me funciono, al colocar la formula me devuelve N/A.
Gracias
Dame si quieres tu correo electrónico y te envío la hoja para que lo veas. De cualquier manera repaso no se me haya olvidado algo.
Creo que, una vez corregida, te servirá:
=si(d4>420;buscarv(d4;a1:b14;2);si(d4=buscarv(d4;b1:b14;1);buscarv(d4;a1:b14;2);buscarv(d4;indice(b1:b14;coincidir(d4;b1:b14;1)+1);1)))
Es la última vez que hago la solución usando otros rangos diferentes en mi hoja. Esta sí es correcta:
=si(d4>420;buscarv(d4;a1:b14;2);si(d4=buscarv(d4;a1:a14;1);buscarv(d4;a1:b14;2);buscarv(d4;indice(b1:b14;coincidir(d4;a1:a14;1)+1);1)))
=si(d4<30;0;si(d4>420;buscarv(d4;a1:b14;2);si(d4=buscarv(d4;a1:a14;1);buscarv(d4;a1:b14;2);buscarv(d4;indice(b1:b14;coincidir(d4;a1:a14;1)+1);1))))
La defininitiva. Lo lamento, muchas cosas nuevas para mí (cambiar mayúsculas, rangos, etc).

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas