Excel의 IF 함수에 "인수가 너무 많습니다"

Excel의 IF 함수에 "인수가 너무 많습니다"

기능이 너무 많다는 오류가 계속 나오네요. 내가 달성하려는 작업은 특정 열(월요일부터 일요일까지)에 시간이 나열된 경우 날짜(셀 Y1)에서 올바른 일수를 뺀 값입니다. 왜 작동하지 않습니까?

=IF(M3<>"", $Y$1-6, "",IF(N3<>"", $Y$1-5, "", IF(O3<>"", $Y$1-4, "",IF(P3<>"", $Y$1-3, "",IF(Q3<>"", $Y$1-2, "", IF(R3<>"", $Y$1-1, "",IF(S3<>"", $Y$1, "")))))))

답변1

중첩된 if는 상위 IF의 FALSE 위치로 이동합니다.

=IF(M3<>"", $Y$1-6,IF(N3<>"", $Y$1-5,IF(O3<>"", $Y$1-4,IF(P3<>"", $Y$1-3,IF(Q3<>"", $Y$1-2, IF(R3<>"", $Y$1-1,IF(S3<>"", $Y$1,"")))))))

그러나 우리는 확실히 이를 더욱 간소화할 수 있다고 말했습니다.

=$Y$1-7-MATCH(TRUE,INDEX(M3:S3<>"",),0)

INDEX는 MATCH에 TRUE/FALSE 배열을 반환합니다. MATCH는 첫 번째 TRUE 배열의 상대 위치를 반환합니다. Y1에서 뺄 올바른 값을 얻기 위해 7에서 이를 뺍니다.

관련 정보