¿Cómo utilizar la función indirecto para hacer referencia a varias hojas desde celdas?

Tengo una fórmula que quiero correr (hacer un autofill) y al hacerlo quiero que tome ciertas hojas que las dejare designadas en algunas celdas. Hasta el momento la fórmula va así:

=SI.ERROR(BUSCARV($C4;'JULIO BASE'!$D$2:$Q$50;14;FALSO);0)

Pero en vez de la hoja "JULIO BASE" quiero que tome como referencia de hoja la celda C3 que estará a su vez en una hoja llamada "Parámetros", esta celda tendrá como valor el nombre de una hoja que para este caso es "Julio 01".

Por lo tanto la fórmula tendría que tomar en ves de "JULIO BASE" aparecería "Julio 01".

Además si esta fórmula la tengo en el rango D6 quiero que al correrla hasta el rango J6 valla tomando como referencia el nombre de otras hojas que estarán designadas en las celdas de la hoja "Parámetros",

En este caso la celda C3 tendría la hoja "Julio 01"

La celda D3 tendría la hoha "Julio 02"

La celda D3 tendría la hoja "Julio 03" y así sucesivamente.

Cosa que por ejemplo cuando corra la fórmula que tomaba la celda C3 de la hoja de "Parámetros" para hacer referencia a la hoja "Julio 01" empiece a tomar las siguientes hojas a medida que la corra.

Si la fórmula esta en el rango D6, al correrla al E6 ya no tendría que hacer referencia a la hoja "Julio 01" si no a la hoja "Julio 02"

2 respuestas

Respuesta
3

H o l a:

Te anexo la fórmula

=SI.ERROR(BUSCARV($C4;INDIRECTO("'" & Parámetros!C3 & "'!$D$2:$Q$50");14;FALSO);0)

Revisa en tu hoja "Parámetros", los nombres estén como texto "Julio 01", "Julio 02" y no como fecha "01/07/2016", etc.


Pon la fórmula en la celda D6 y córrela hacia la derecha, en automático tomará las hojas que tienes en la hoja parámetros:


'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias
Respuesta
1

Lo puedes hacer de este modo:

=si.error(buscarv($C4;indirecto(C3&"$D$2:$Q$50";FALSO);2;FALSO);0)

Estoy viendo que si en tus nombres de hojas hay un espacio esta fórmula no te funcionará, tendrás que utilizar esta otra:

=si.error(buscarv($C4;indirecto(CONCATENAR("'";C3;"'!")&"$D$2:$Q$50";FALSO);2;FALSO);0)

Así sí.

De nuevo no he atinado, es así:

=si.error(buscarv($C4;indirecto(CONCATENAR("'";C3;"'!")&"$D$2:$Q$50";verdadero);2;falso);0)

No me ha funcionado, me trae el valor de cero cuando es falso, pero censo es verdadero el buscarv me sigue trayendo 0, como si hiera falso. Creo que es porque no reconoce el valor de la celda como una hoja  

Pues a mí sí que me funciona, mira:

Busca el valor de C4 en la primera columna del rango D2:Q50 de la hoja Julio 01, y devuelve el valor de la segunda columna. He arrastrado la fórmula a D6 y sigue buscando el valor de C4 en el mismo rango pero de la hoja Julio 02 y en este caso lo encuentra y devuelve el valor correcto, "perez" en el ejemplo.

Si no lo solucionas me puedes mandar el archivo si quieres y lo reviso.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas