2016-11-20 2 views
0

코딩에 익숙하지 않고 데이터베이스를 채울 수있는 userform을 개발하려고합니다.VBA에서 고정 유형 불일치 오류 13

userform을 통해 데이터베이스에 입력 할 수있는 데이터의 유효성을 설정하려고합니다.

이 코드는 아래에 나와 있습니다. 여기서 Reg는 내 userform의 컨트롤 이름입니다.

이 코드 부분을 실행하면 첫 줄에서 중지되고 형식 불일치 오류 13 메시지 상자가 표시됩니다.

도움을 주시면 감사하겠습니다.

Sub ValidCombo1() 

    If Reg18.Value = "" And ((Reg17.Value <> "1" Or (Reg15.Value <> "0" Or "") Or Reg16.Value <> "A" Or Reg19.Value <> "") Or (Reg17.Value <> "" And Reg15.Value <> "" And Reg16.Value <> "" And Reg19.Value <> "")) Then 

     MsgBox "Invalid Foundations combination" 

     Reg13.Value = "" 

    ElseIf Reg25.Value = "" And ((Reg24.Value <> "1" Or (Reg22.Value <> "0" Or "") Or Reg23.Value <> "A" Or Reg26.Value <> "") Or (Reg24.Value <> "" And Reg22.Value <> "" And Reg23.Value <> "" And Reg26.Value <> "")) Then 

     MsgBox "Invalid Inverts and Aprons combination" 

     Reg13.Value = "" 
+0

if 문을 코드 블록에 넣으시겠습니까? – user1

답변

2

코드는

Reg15.Value <> "0" Or "" 

는 형식이 일치처럼 다른 문제지만, 표현이있을 수 있습니다. ""은 문자열이며 부울 값이 아닙니다.

그 타입 불일치를 제거한다 (나는 당신의 의도가 생각)

Reg15.Value <> "0" And Reg15.Value <> "" 

에 의해 Reg15.Value <> "0" Or "" 교체.

+0

감사합니다. 존, 그걸 정리 한 것 같습니다. – Wizard0800