
아래와 같은 시트가 있습니다. 통합 문서 B에 대한 참조 없이 통합 문서 B의 모든 수식을 A로 복사하고 싶습니다.
지금 그렇게 하면 현재 모든 수식에 통합 문서 B에 대한 링크가 표시됩니다. 하지만 수식만 원하지만 현재 통합 문서(통합 문서 a)에 연결되어 있습니다.
기본 합계 수식을 복사하면 작동하지만 수식에 테이블이 포함된 경우 참조는 통합 문서 B에 대한 것입니다.
다음은 샘플 수식입니다.
=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"))
통합 문서 A 시트 a:
통합 문서 B 시트 B
수식 표시줄로 이동하여 통합 문서 B의 실제 수식을 A에 복사하면 예상한 결과를 얻을 수 있지만 이러한 모든 수식에서 볼 수 있듯이 지루할 수 있습니다.
답변1
Excel 2010에서 테스트됨
A에서 B로 테이블의 일부를 복사하면 A를 다시 참조하게 됩니다. 수식에 다른 테이블이나 다른 시트에 대한 참조가 없으면 전체 테이블(헤더를 포함해야 함)을 복사해도 A를 다시 참조하지 않습니다. 표 외부의 범위를 참조하지만 동일한 시트에 있는 표의 수식은 B를 올바르게 참조합니다.
해결책(매우 좋은 방법은 아니지만)은 B에 복사하기 전에 테이블에 다른 테이블이나 시트를 참조하는 수식이 없는지 확인하는 것입니다. A의 데이터를 동일한 시트로 마이그레이션하면 이 작업을 수행할 수 있습니다.
주석에서 언급했듯이 Ctrl H
시트에 대한 모든 참조를 찾아 nullstring으로 바꾸는 것은 붙여넣은 후 문제를 해결하는 빠른 방법입니다.
주석에 언급되지 않은 것은 명명된 범위가 A를 다시 가리키는 가능성이며 링크가 깨졌을 가능성이 높습니다. 워크시트 범위(통합 문서와 반대)를 사용하여 이 문제를 완화할 수 있지만 B에 붙여넣은 후 이름 관리자에서 편집/삭제해야 할 가능성이 높습니다.
저는 VBA에 관심이 있고 가장 좋은 해결책은 A에서 원본 보고서를 생성하는 코드를 작성하는 것이라고 믿습니다. 이렇게 하면 A에서 B로 복사해야 하는 요구 사항이 제거되고 프로그램을 실행하여 필요에 따라 새 보고서를 생성하기만 하면 됩니다.
답변2
아주 우아하지는 않지만 . . . . 참조를 복사하도록 허용한 다음 편집/교체를 사용하여 모두 제거하는 것은 어떨까요?