
Tengo una hoja como la de abajo. Quiero copiar todas las fórmulas del libro B a A pero sin la referencia al libro B.
cuando lo hago ahora obtengo un enlace en todas mis fórmulas al libro B. Pero quiero solo las fórmulas pero vinculadas a mi libro actual (libro a)
Si copio una fórmula de suma básica, funciona, pero cuando la fórmula involucra una tabla, la referencia es al libro B.
aquí hay una fórmula de muestra,
=IF(Start!$D$8="Weekly",0.000001*SUMIFS(tbl_database[Value],tbl_database[Node],H$2,tbl_database[Type],$A14,tbl_database[Accounting],$C$1,tbl_database[Filter],"No"),0.000001*SUMIFS(tbl_database[Value],tbl_database[Node],H$2,tbl_database[Type],$A14,tbl_database[Accounting],$C$1,tbl_database[Source],"<>stack",tbl_database[Source],"<>overflow"))
libro de trabajo Una hoja a:
libro de trabajo B hoja B
si voy a la barra de fórmulas y copio la fórmula real del libro B al A, obtengo el resultado esperado, pero como puede ver con todas estas fórmulas, puede resultar tedioso.
Respuesta1
Probado en Excel 2010
Copiar cualquier parte de la tabla de A a B hará referencia a A. Copiar la tabla completa (¡debe incluir los encabezados!) no hace referencia a A, a menos que la fórmula tenga una referencia a una tabla diferente o a una hoja diferente. Las fórmulas de la tabla que hacen referencia a un rango fuera de la tabla pero en la misma hoja harán referencia correctamente a B.
Una solución (aunque no muy buena) es asegurarse de que la tabla no tenga fórmulas que hagan referencia a otra tabla u hoja antes de copiarla a B. Puede hacerlo migrando sus datos en A a la misma hoja.
Como se menciona en los comentarios, usar Ctrl H
para buscar todas las referencias a la hoja y reemplazarlas con una cadena nula es una forma rápida de resolver el problema después de pegar.
En los comentarios no se menciona la posibilidad de que rangos con nombre apunten a A, muy probablemente con enlaces rotos. Puede intentar mitigar esto utilizando el alcance de la hoja de trabajo (a diferencia del libro de trabajo), pero es probable que aún necesite editarlos/eliminarlos en el administrador de nombres después de pegarlos en B.
Estoy interesado en VBA y creo que la mejor solución es escribir el código que genera el informe original en A. Esto eliminaría el requisito de copiar de A a B, simplemente ejecute el programa para generar un nuevo informe según sea necesario.
Respuesta2
No muy elegante pero. . . . ¿Por qué no permitir que las referencias se copien y luego usar editar/reemplazar para eliminarlas todas?