2017-09-08 3 views
1

셀의 텍스트가 http:// 또는 https://으로 시작되도록 Excel에서 사용자 지정 유효성 검사 함수를 작성하려고합니다. 나는 공식을 사용하는 경우Excel 유효성 검사에서 OR 함수가 손상 되었습니까?

= EXACT (LEFT (간접 ("Z"& ROW()), 8), "https : //로")

검증 작업 만 확인에 대한 https : //.), 정확한 (LEFT (간접 ("Z :이

= OR (EXACT (LEFT (간접 ("Z "& ROW()), 8),"//은 https "같은 OR를 추가하는 경우 "& ROW()), 7),"http : // "))

작동하지 않습니다. 항상 false로 평가됩니다. (EXACT (LEFT (간접 ("Z"& ROW()), 8) "은 https : //"), TRUE)

= OR :

를 나는 다음 수술실 기능을 테스트하기 위해 바로 다음 시도

그리고 이것도 FALSE로 평가됩니다! 내가 미쳤거나 OR 기능이 고장 났습니까? 나는이 방정식을 셀에 붙여 넣을 때 잘 작동한다는 것을 알았습니다. 사용자 정의 유효성 검사 기능으로 사용될 때만 작동하지 않습니다. 당신은 세 번째 조건을 포함 할 필요가

+2

문제는 아니지만 단순한 'Z3'또는 어떤 행 번호가 유효성 검사의 첫 번째 행인지 알 수없는 이유는 무엇입니까? –

+1

Excel 2016에서 "수식이 현재 오류로 평가됩니다. 계속 하시겠습니까?"라고 표시됩니다. 저것에. @ScottCraner와 같은'INDIRECT' 제거는 오류 메시지와 수식 논리를 모두 수정했다고 말했습니다. – GSerg

+0

@ScottCraner 전체 열을 선택하고이 유효성 검사를 적용하기를 원했기 때문에 INDIRECT() 및 ROW()를 사용했습니다. – PICyourBrain

답변

1

일 하나가 없으면 다음과 같이하십시오 : 그것은 Exact()없이 작동합니다

=OR(LEFT(D1,8)="https://", 
    LEFT(D1,7)="http://") 

. 의견에 언급 된대로 If()도 필요하지 않습니다.

+0

두 표현식 모두로 '= OR ( (LEFT (D1,8) = "https : //", 1), (LEFT (D1,7) = "http : //", 1)) 벌써 부울인가? – user1016274

+0

나는 수식에 새로운 라인을 넣는 것이 더 좋아 보인다. @ user1016274 – Vityata

+2

의미 : 표현식 자체가 이미 부울 값이므로 'IF()'함수가 필요하지 않습니다. 줄 바꿈에 관한 것이 아닙니다. – user1016274