내가 선택한 두 날짜 사이를 찾는 Excel INDEX MATCH

내가 선택한 두 날짜 사이를 찾는 Excel INDEX MATCH

스크린샷
저는 Excel을 사용하여 항목 목록(D열의 항목 이름)과 해당 항목을 G열에 생산하는 데 걸린 시간을 기록합니다.

저는 다음을 사용하여 이번 주(또는 선택한 두 날짜 사이)에 실적이 가장 저조한 제품을 검색하기 위해 INDEX MATCH를 수행하고 있습니다.

=MAXIFS($G:$G,$E:$E,">="&O67,$E:$E,"<"&O68)

이는 셀 O67과 O68의 두 날짜 사이에서 가장 긴 생산 기간을 반환합니다. 그런 다음 내가 하고 싶은 것은 만드는 데 가장 오랜 시간이 걸린 항목(D열)의 이름을 반환하는 것입니다.

난 노력 했어

=INDEX(D:F,MATCH(O69,G:G,0),1)

하지만 이것은 단지 기록된 시간을 보고 이번이 목록에 나타난 첫 번째 경우를 반환합니다. 꽤 긴 목록이므로 많은 시간이 반복되므로 이는 좋은 방법이 아닙니다. 단지 O67과 O68의 두 날짜를 참조하고 INDEX MATCH를 위해 이들 각각의 날짜 사이를 살펴보기를 원합니다.

가는 길이 배열일 수도 있을 것 같은데 저는 그런 걸 해본 적이 없으니 이 길이면 제가 이해할 수 있도록 천천히 가져가주실 수 있나요!

미리 감사드립니다!

답변1

이것을 시도해 볼 수 있습니다.정렬Enter을 사용하지 않고 Ctrl++ Shift를 사용하여 입력한 수식 Enter:

=INDEX($D$2:$D$1000,MATCH(1,($G$2:$G$1000= (ABSOLUTE REFERENCE TO MAXIFS CELL)
                           *($E$2:$E$1000>=$O$67)
                           *($E$2:$E$1000<$O$68),0))

배열 수식에서는 전체 열이 아닌 현명하게 선택한 범위의 참조를 사용하는 것이 성능 측면에서 더 좋습니다. 전체 열을 선택하면 배열 수식이 사용되지 않는 경우에도 실제로 모든 행에서 작동하므로 통합 문서가 느려지기 때문입니다.

테스트할 Excel 2019가 없고 Excel 365에서는 배열 수식을 볼 수만 있고 입력할 수는 없습니다.

답변2

문제는 시작 및 종료 날짜와 개수 등 몇 가지 도우미 셀을 사용하여 해결할 수 있습니다.

여기에 이미지 설명을 입력하세요

  • 셀의 시작 및 종료 날짜 수를 얻으려면 이 수식을 입력하세요 E193.

    =SUMPRODUCT(($C$179:$C$190>=C193)*($C$179:$C$190<=D193))
    
  • Cell 에 이 배열(CSE) 수식을 입력하고 B195다음으로 마무리합니다.Ctrl+Shift+Enter그리고 채우세요.

{=IF(ROWS(B$195:B195)>$E$193,"",INDEX(B$179:B$190,SMALL(IF(($C$179:$C$190>=$C$193)*($C$179:$C$190<=$D$193),ROW(B$179:B$190)-ROW($B$179)+1),ROWS(B$195:B195))))}

주의

  • 시작 및 종료 날짜의 개수는 기능 사용을 방지하고 IFERROR제품 목록을 답변으로 정당화하며 개수 값과 동일해야 합니다.

필요에 따라 수식에서 셀 참조를 조정합니다.

관련 정보