
답변1
댓글에 제공한 링크에서 설명한 대로 MATCH(,,-1)
데이터를 내림차순으로 정렬해야 합니다. 그렇지 않으면 반환되고 오류가 발생합니다.
문자 그대로 명시된 내용("내 조회 값/번호보다 큰 첫 번째 숫자")을 얻으려면 다음을 사용할 수 있습니다.
=INDEX(A3:F3,MATCH(A6,A2:F2,1)+1)
첫 번째 숫자가 동일한 일치 항목을 얻으려면또는조회 값보다 크면 다음을 사용할 수 있습니다.
=INDEX(A3:F3,IFERROR(MATCH(A6,A2:F2,0)-1,MATCH(A6,A2:F2,1))+1)
답변2
여기에서 할 수 있었던 일이 많이 있습니다. 좀 더 "벽에서 벗어나" 있지만 더 짧은 공식의 경우 다음을 사용할 수 있습니다.
=INDEX(FILTER(A2:F3,A2:F2>=A6),2,1)
FILTER()
결과 배열(내부적으로 사용된 배열)의 첫 번째 열에 원하는 문자를 반환하도록 이러한 방식으로 설정됩니다. 따라서 INDEX()
함수를 쉽게 채울 수 있도록 만드는 방법에 관계없이 원하는 문자가 "행 2, 열 1"이라는 것을 정확하게 알 수 있습니다 .
"보다 큼" 또는 "같거나 큼"은 의 조건에서 ">" 또는 ">="를 사용하여 훨씬 더 익숙한 방식으로 처리됩니다 FILTER()
.
FILTER()
요청하지 않고 결과 배열을 정렬 하므로 조회 행이 정렬되지 않은(순서가 잘못된 경우) 경우를 해결합니다 . 따라서 조회 행의 조건에 관계없이 정답이 반환됩니다.
사용할 수 없는 경우 FILTER()
다음을 배열로 사용하여 해당 값을 MATCH()
찾고 공급할 수 있습니다 INDEX()
.
=MIN(IFERROR((A2:F2)/(A2:F2>=A6),MAX(A2:F2)))
거의 완전히 구식이며 사용할 IF(ISERROR(...
수 없는 경우 대체할 수 있습니다 IFERROR()
. 값은 ">=" 테스트에서 1 또는 0으로 나누어 조회 행의 값이 생성되거나 오류가 발생하지만 이러한 경우 MAX()
조회 행에서 가장 높은 값을 채워서 오류가 발생하지 않습니다. 원하는 값을 찾는 데 방해가 됩니다. 상황에 따라 필요한 경우 결과에 "+1"을 추가하여 MAX()
미만이 "자연" 항목을 초과하도록 할 수 있습니다.
물론 요즘에는 XLOOKUP()
매우 훌륭하게 수행됩니다.
=XLOOKUP(A6,A2:F2,A3:F3,,1)
짧고, 간단하고, 명확합니다. 트릭이 필요하지 않습니다.
( F Bert
기뻤습니다. 문제의 유일한 요소 집합과 관련되지 않은 답변이 필요한 사람을 조사하는 사람을 위해 게시했습니다.)