Utilizar el valor de una celda como referencia en una búsqueda

Aunque supongo que debe ser fácil, estoy trabado. Tengo dos columnas, una con valores del 0 al 174 y otra con los valores que corresponden a dichos valores. Resumiendo, es así: BUSCAR(105;$BO$3:$BO$177;$BP$3:$BP$177). La cuestión es que las columnas pueden ser más cortas o más largas, por lo que pretendo que $BO$177 y $BP$177 cambien en función del valor que se calcula en dos celdas. ¿Cómo puedo sustituir ambas por referencias a dichas celdas? ¿Puede ser que quede más o menos así BUSCAR(105;$BO$3:referencia a celda AW18;$BP$3:referencia a celda AW19)? Dichas celdas contendrían el rango final de las columnas.

1 respuesta

Respuesta
1

Te anexo la fórmula

=BUSCAR(105;$BO$3:INDIRECTO(AW17);$BP$3:INDIRECTO(AW18))

Saludos.Dante Amor

Gracias por la respuesta, pero no me funciona. ya la había probado sin éxito. me da valor volátil y no hay forma de que funcione.

Yo la probé y me funciona

¿Y qué tienes en las celdas AW17 y AW18?

Así me funciona, la tengo en F17,

En AW17 tengo el dato "BO177"

En AW18 tengo el dato "BP177"

Los datos los tengo desde BO2 y hasta BO9

La fórmula busca el número 105 y me regresa "Luis"

Si el número 105 es menor al primer número de tu lista, regresa error.

En las celdas AW17 y AW18 tienes que poner una referencia de celda válida.

Mil gracias. Ha funcionado por fin. El fallo (creo) era que las referencias se tomaban de otra de las hojas del mismo libro. He cambiado las tablas y modificado las fórmulas y ahora va perfectamente. Mil gracias de nuevo.

Para rizar el rizo, ¿se puede utilizar algo similar a indirecto en visual basic? ¿Como se haría para el siguiente caso?  Range("C2:I26").Select y substituir C2 por el equivalente a INDIRECTO(AW17) e I26 por su equivalente INDIRECTO(AW18).

En vba, también puedes utilizar indirecto, pero es más fácil de esta forma:

Range(Range("AW17") & ":" & Range("AW18")).Select

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas