Referencia de celda basada en el nombre de la hoja

Referencia de celda basada en el nombre de la hoja

Tengo un libro de trabajo.

En él tengo varias hojas a las que les cambié el nombre con un número. La primera hoja es la base de datos de la que quiero extraer el número.

hoja1renombrado a A: contiene los datos que quiero extraer
hoja2renombrado a 1: la fórmula en la celda B3debe ser=A!B1
hoja3renombrado a 2: la fórmula en la celda B3debe ser=A!B2
hoja4renombrado a 3: la fórmula en la celda B3debe ser=A!B3
hoja5renombrado a 4: la fórmula en la celda B3debe ser=A!B4

Puedo extraer el nombre de la hoja cuyo nombre cambié a dígito arriba con esta fórmula

IF(ISERROR(RIGHT(CELL("filename";$A$1);LEN(CELL("filename";$A$1))-FIND("]";CELL("filename";$A$1))));"This workbook never saved";RIGHT(CELL("filename";$A$1);LEN(CELL("filename";$A$1))-FIND("]";CELL("filename";$A$1))))

Pero no puedo usarlo para cambiar la referencia de la celda de modo que en la hoja 1esté =A!B1y en la hoja 2esté =A!B2
la referencia de la celda cambie cada vez que cambie el nombre de la hoja.

¿Alguien puede ayudarme con eso? Entonces la fórmula se parece más a esta.=A!B(sheetname)

Respuesta1

Prueba esto

=INDIRECT("A!B"&yourformula)

Una de las desventajas es INDIRECTque si cambia Ael nombre de su hoja, por ejemplo Kitchen, la fórmula no se actualizará a "Kitchen!B"&yourformula.

Y recuerde que INDIRECTes una forma poco elegante de resolver problemas. ¡Es tremendamente lento, especialmente cuando se trata de MUCHOS INDIRECTOS!

información relacionada