Excel 전환 기능을 사용하여 값 범위와 비교하는 방법

Excel 전환 기능을 사용하여 값 범위와 비교하는 방법

SWITCH 함수를 사용하여 숫자가 다른 두 숫자 사이에 있는지 감지하고 다음 숫자 범위를 테스트하지 않는 경우 등을 수행하고 싶습니다.

목표는 하나의 셀 답변을 얻은 다음 열(이 예에서는 날짜)에 수식을 복사하는 것입니다.

나는 이것을 시도했다 :

=SWITCH(MONTH(44562);{1;2;3};"T1";{4;5;6};"T2";{7;8;9};"T3";{10;11;12};"T4")

그러나 함수는 배열의 각 요소에 대해 유출되며 비교는 배열 수준별로 수행됩니다.

IFS 함수를 사용하여 이 문제를 해결할 수 있지만 그렇게 하려면 각 인수 쌍에 대한 논리적 테스트를 작성(및 평가)해야 하며 이것이 제가 피하고 싶은 것입니다.

아마도 나는 이 문제를 잘못된 각도에서 다루고 있을 수도 있지만 SWITCH의 이러한 사용이 어떻게든 가능한지 여전히 알고 싶습니다. 미리 감사드립니다.


답변 :

Reddy Lutonadio의 것은 고유 값 목록에 매우 유연합니다. 제가 받아들인 것입니다.

Ron Rosenfeld의 것은 매우 간결하고 효율적이며 실수로 작업할 수 있지만 목록의 길이는 동일해야 합니다.

내 의견: 더 복잡한 상황에는 IFS를 사용하세요. (아마도 혼합에 LET 기능을 추가할 수도 있습니다.)

답변1

아래 수식과 같이 LET, SWITCH, 및 함수 의 조합을 시도해 볼 수 있습니다 FILTER.NOTISERROR

=LET(x,SWITCH(MONTH(F1),{1,2,3},"T1",{4,5,6},"T2",{7,8,9},"T3",{10,11,12},"T4"),FILTER(x,NOT(ISERROR(x))))
  • xLET 함수: SWITCH 공식을 한 번만 계산할 수 있습니다 .
  • NOT(ISERROR) 함수: 오류가 없는 행을 반환합니다.
  • FILTER 함수: 유일한 올바른 값을 반환합니다.

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

답변2

Simpler는 귀하의 요구에 충분히 유연하지 않을 수 있습니다. 그러나 동일한 결과를 반환하려면 다음을 사용하십시오 SWITCH.

=SWITCH(INT((MONTH(A1)-1)/3)+1,1,"T1",2,"T2",3,"T3",4,"T4")

더 간단한 공식을 사용하여 동일한 결과를 얻을 수 있습니다.

=TEXT(INT((MONTH(A1)-1)/3)+1,"\T0")    
=CHOOSE(INT((MONTH(A1)-1)/3)+1,"T1","T2","T3","T4")

관련 정보