
엑셀에 2개의 시트가 있습니다.
한 필드에는 날짜 필드가 있습니다.
예를 들어 A-1 날짜1
두 번째 시트에는 ID가 포함된 날짜 범위가 있습니다.
A-1 시작 날짜 A2- 종료 날짜 A3- 날짜 범위 ID
Date1 의 범위 ID가 포함될 첫 번째 시트에 새 필드를 만들어야 합니다.
두 번째 시트의 예를 들어 A1-May 1 2017 A2-May 30 2017 A3-7 범위가 있습니다.
첫 번째 시트 A1-May 3 2017. 따라서 첫 번째 시트에 값 7을 갖는 새 열을 갖고 싶습니다.
엑셀에서는 어떻게 할 수 있나요?
답변1
@Ron Rosenfeld가 이미 언급했듯이 Sheet2의 범위에 Sheet1의 모든 날짜가 포함되고 겹치는 부분이 없으면 간단한 VLOOKUP이 작동합니다. 그러나 Sheet2의 Date RANge가 반드시 오름차순이 아니며 사이에 간격이 있거나 겹칠 가능성이 있는 경우입니다. 이 솔루션을 사용해 보세요. 제한 사항은 Sheet1의 데이터가 범위 내에 있는 것으로 확인된 날짜 범위에 대한 첫 번째 범위 ID를 반환해야 한다는 것입니다.
이 예에서 Sheet1의 A1:A10 열에 날짜가 있습니다. Sheet2의 시작 날짜는 A1:A7이고 종료 날짜는 B1:B7이고 범위 ID는 C1:C7입니다.
Sheet1 셀 B1에 다음 배열 수식을 입력합니다.
=IF(ISERROR(INDEX(Sheet2!$C$1:$C$7,MATCH(1,IF(A1>=Sheet2!$A$1:$A$7,IF(A1<=Sheet2!$B$1:$B$7,1,0)),0))),"Not Found",INDEX(Sheet2!$C$1:$C$7,MATCH(1,IF(A1>=Sheet2!$A$1:$A$7,IF(A1<=Sheet2!$B$1:$B$7,1,0)),0)))
그런 다음 CTRL+SHIFT+ENTER 키를 눌러 배열 수식으로 만듭니다. 이제 주소 표시줄에 중괄호로 묶인 수식이 표시됩니다. 이제 원하는 행까지 아래로 드래그하세요. 이제 B열은 A열의 날짜가 범위에 속하는 Sheet2에서 해당 범위 ID를 가져옵니다.
이 공식은 중첩된 IF를 검사하여 일치 범위를 기반으로 TRUE, FALSE 배열을 반환하고 외부 INDEX-MATCH를 사용하여 일치하는 1의 첫 번째 위치를 가져오고 범위 ID 열에서 해당 위치의 값을 반환합니다.