CONCATENATE를 사용하여 외부 참조를 작성했지만 파일이 서로 연결되지 않기 때문에 외부 파일에서 값이 선택되지 않습니다. INDIRECT()가 사용되었지만 Excel 파일이 열린 경우에만 값이 선택됩니다. 다른 해결책이 있습니까?
답변1
실제로 INDIRECT()
닫힌 파일에서는 작동하지 않습니다.
이를 해결하는 전통적인 방법은 스프레드시트에 "진행되지 않는" 위치를 두거나 이름이 지정된 범위를 두는 것입니다. 여기서 미리 작성된 DIRECT 수식을 통해(때로는 닫혀 있고 때로는 열려 있음) 다른 스프레드시트. 그런 다음 미리 작성된 공식을 참조하여 원하는 값을 제공합니다. 참조를 작성하여 제공하면 INDIRECT()
동일한 스프레드시트의 DIRECT 수식을 참조하게 되고 DIRECT 수식은 수행할 수 없는 가까운 스프레드시트를 조사하게 됩니다 INDIRECT()
.
두 가지 이상의 가능성이 있는 경우 이를 설정하는 것이 약간 불쾌할 수 있습니다. 40개의 다른 스프레드시트에서 특정 셀을 보고 싶다고 가정해 보겠습니다. 물론 셀에서 한 번에 하나만 수식을 작성 하지만 그 중 하나는 40개 중 하나일 수 있습니다. 40개의 DIRECT 수식을 작성하고 약간 다른 논리 인 테스트 수식을 INDIRECT()
사용해야 합니다. IF()
가치가 필요한 곳.
그러나 표준 문자열 수식을 사용하여 DIRECT 수식을 작성할 수 있습니다. 시작 부분에 "="를 남기고 수식의 나머지 부분에서 사용하지 않는 일부 문자를 사용할 수 있습니다. 아마도 "¢" 문자일 것입니다. 따라서 다음과 같은 40개의 "공식"을 얻게 됩니다.
¢A1
그런 다음 완료되면 값을 복사하여 붙여넣고 Find and Replace
해당 특이한 문자를 "="로 바꾸면 문자열이 수식으로 변환됩니다. 그래서... 불쾌하지만... 어렵지도 않고 시간이 많이 걸리지도 않습니다.
물론 참조할 통합 문서가 40개 있고 각 셀에 수백 개의 서로 다른 셀이 있다면 꽤 지루할 수 있습니다. 하지만 적어도 IF()
그중에서 가치를 얻을 수 있는 항목을 선택하는 테스트는 실제로 어렵지 않습니다.
그러나 이는 닫혀 있을 수 있는 통합 문서를 조사할 때 일반적인 사항이라는 점을 명심하십시오. Excel에 대한 일반적인 요구 사항에 비해 Excel에서는 수행해야 하는 각 위치에 대해 모든 작업을 수행해야 하는 부담이 꽤 큽니다. 수식에서 함수를 평가하는 것은 Windows로 이동하여 백그라운드에서 파일을 열고, 로드하고, 값을 찾고, Windows에서 파일을 닫고, 현재 통합 문서에 값을 배치하는 것보다 훨씬 쉽습니다. 40개의 매크로를 동시에 실행하는 것과 마찬가지로 이러한 참조가 40개가 있는 경우입니다.
그래도 그렇게 할 것이고, 직접 시도해 보기 전까지는 눈에 띄게 될지 알 수 없습니다. 그런 다음 다양한 사용자가 시도해 볼 때까지 기다리세요. 그러므로 먼저 시도해 보지 않고 그 이유만으로 부끄러워하지 마십시오.