2017-04-03 10 views
1

사이의 가장 가까운 값에 대한 GoogleSheets INDEX MATCH가 Excel에서 INDEX MATCH를 사용하는 기간 사이의 최소 절대 값과 가장 근접한 계정 이름을 반환하려고합니다. I는 Google 스프레드 시트의 날짜 범위

  • 열 C를 검색 할 이름

    • A 열은
    • 열 B 평가 기간이다 감산 될 수이다 : 여기

      =ARRAYFORMULA(INDEX(B2:B,MATCH(MIN(ABS(C2:C-$G$5)),ABS(C2:C-$G$5),(A2:A>=G2)*(A2:A<=G3)))) 
      

      데이터 값이며 추측에서 가장 작은 절대적 차이를 발견 할 수 있습니다.

    • G5는 추측입니다.
    • G2와 G3은 내가 검색하고자하는 기간의 시작과 중지입니다. 그렇다고 ...

      enter image description here

      지금 수식하고있다 : 여기

  • 일부 더미 데이터의 예이다. 그것은 의해 지정된 최소 절대 가까운 값이 아닌 기간에서 관련된 계정 이름을 반환한다 : 그것은 제 값인 등

    여기
    (A2:A>=G2)*(A2:A<=G3) 
    

    계정 "A"를 반환하는 추측 가까운 있지만 그것은 G2와 G3에 의해 지정된 날짜 분노의 바깥 쪽이다.

    이 예제에서 반환해야하는 정답은 셀 B4의 "C"입니다.

    이 수식은 무엇이 잘못 되었나요?

    감사합니다.

    답변

    1

    match()의 세 번째 매개 변수는 -1, 0, or 1이어야합니다. 그래서 공식적으로 (A2:A>=G2)*(A2:A<=G3) 부분은 아무것도 아닙니다. 일부 범위를 일치 시키려면 filter()을 사용할 수 있습니다. 그래서 당신의 공식은 이렇게되어야합니다.

    =arrayformula(
        index(
        filter(B2:B, A2:A >= $G$2, A2:A <= $G$3), 
        match(
         min(abs(filter(C2:C, A2:A >= $G$2, A2:A <= $G$3) - $G$5)), 
         abs(filter(C2:C, A2:A >= $G$2, A2:A <= $G$3) - $G$5), 
         0 
        ) 
        ) 
    ) 
    

    테스트를 거쳤습니다. 샘플 시트는 here입니다.

    +0

    거대한! 고맙습니다! – Chef1075

    관련 문제