정의된 사용 가능한 단계를 사용하여 값이 최대값과 최소값 사이에 있는지 확인하는 공식으로 나를 도와줄 수 있는 사람이 있습니까? 예: 사용 가능한 값은 A1 = 1(최소 한계) B1 = 2(최대 한계) C1 = 0.2(사용 가능한 단계)로 제공됩니다. 즉, 사용 가능한 값은 1, 1.2, 1.4, 1.6, 1.8 및 2입니다. 마찬가지로 값도 1.1은 유효하지 않습니다. A2의 값이 제한 및 사용 가능한 단계를 따르지 않는 경우 수식은 "Err"를 반환해야 합니다. 수식 =IF(OR(A2B1);"Err";"ok")는 최소 및 최대 제한을 처리하지만 사용 가능한 단계는 처리하지 않습니다.
답변1
IF(SUMPRODUCT()) 사용
=IF(SUMPRODUCT(--(A1+C1*(ROW($ZZ$1:INDEX($ZZ:$ZZ,INT((B1-A1)/C1)+1))-1)=A2)),"OK","ERR")
(ROW($ZZ$1:INDEX($ZZ:$ZZ,INT((B1-A1)/C1)+1))-1
0부터 상한에 도달하는 데 필요한 단계 수까지의 숫자 배열을 생성합니다.
그런 다음 해당 배열이 math:에 전달되고 A1+C1*...=A2
TRUE/FALSE 배열이 생성됩니다. SUMPRODUCT는 TRUE를 계산하고, 이 경우 1 또는 0이면 If는 TRUE를 반환합니다.
동적 배열(Office 365에서만 사용 가능)을 사용하면 다음과 같이 단축할 수 있습니다.
=IF(OR(SEQUENCE((B1-A1)/C1+1,,A1,C1)=A2),"OK","ERR")
일련의 단계를 피하기 위해 편집하십시오.
=IFERROR(IF(AND(A2>=A1,A2<=B1,MOD(ROUND((A2-A1)/C1,10),1)=0),"OK","Err"),"Nb! Check ""Step"" input")
답변2
"=IF(SUMPRODUCT" -수식과 관련하여 몇 가지 문제가 발생합니다... 1) 수식에는 가능한 단계 수에 제한이 있습니다. 2) 수식이 과도하게 복사되므로 $ 사용을 피하는 것을 선호합니다. 다른 통합 문서에.
나는 다른 공식을 알아냈습니다("Iferror" 앞 부분은 단계가 정의되지 않은 경우를 처리합니다).
=IF(C1="";IF(AND(A2>=MIN(A1:B1);A2<=MAX(A1:B1));"확인";"오류");IFERROR(IF(AND(INT( (A2-A1)/C1)=(A2-A1)/C1=TRUE;(A2-A1)/C1<=(B1-A1)/C1;(A2-A1)/C1>=0);"확인 ";"Err");"주의! ""Step"" 입력을 확인하세요."))
'메모! 어떤 이유에서인지 수식에서 제가 정말 이해할 수 없는 오류가 발생했습니다. 아래 수식에서 셀 A6 및 A10의 INT 수식은 5와 같을 것으로 예상됩니다.