Excel usando referencia para nombres de hojas de trabajo

Excel usando referencia para nombres de hojas de trabajo

Miré a mi alrededor para intentar resolver este problema, sin embargo, no estoy familiarizado con la codificación.

Aquí está mi línea de código,

='[WorkBook]BOM'!G6

Lo que quiero hacer es realizar la llamada del Libro de trabajo a una celda para poder reemplazar en masa todos los nombres del 'Libro de trabajo' sin Buscar y Reemplazar.

Básicamente, algo como esto (aunque este código no funciona, es sólo como referencia)

='[=E1]BOM'!G6

Luego, en la celda E1, podría ingresar cualquier texto que desee para reemplazar el nombre de los Libros. Estoy tratando de encontrar la fórmula para hacer esto.

Respuesta1

Debe utilizar la INDIRECT()función para evaluar una cadena de texto como una función.

=INDIRECT("'["& E1 & "]BOM'!G6")

Tenga en cuenta que la INDIRECT()función solo devolverá el valor si el libro al que se hace referencia está abierto. De lo contrario devolverá un #REF!error.

Respuesta2

INDIRECTno funcionará con libros de trabajo externos cerrados. Su mejor opción en automatización parece ser colocar la ruta del libro en una celda y escribir una macro que busque/reemplace todas las apariciones del nombre del libro anterior y las reemplace con el nombre del nuevo libro.

Respuesta3

Mi solución le permitiría hacer referencia a un rango, solo si los nombra primero.

Por ejemplo, nombra el rango A1:A100 como MyRange en el Libro de trabajo 1.

Luego, en su libro de trabajo actual, puede ingresar "MyRange" en E1 en el libro de trabajo 2.

luego use INDIRECTO (E1)

información relacionada