나눔터  
  HOME > 나눔터 > 묻고답하기 > 엑셀
엑셀
엑셀에 대한 질문과 답변을 올려주세요. 단, 취지에 맞지 않는 글은 운영자가 삭제합니다.
 "000 님, 도와주세요", "부탁 드립니다.", "급합니다!" 등과 같이 막연한 제목을 달지 말아주세요.
[필독] 빠르고 정확한 답변을 얻는 16가지 Tip !
[필독] 저작권법 개정에 따른 이용안내

작성자:  

 개발어려워요 (tsy90)

추천:  2
파일:     조회:  1810
제목:   CHECKBOX.VALUE 값 변경할 수 있나요..??
     
  * 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.

 - 엑셀 버전(95,97,2000,xp,2003,2007):엑셀2013

* 아래줄에 질문을 작성하세요 >>

VBA를 처음 만져보게 되었는데요..

VBA에서 FORM을 만들어서 CHECKBOX를 예를들어 2개만 넣었다고 하겠습니다.

그럼 CHECK된 값이 TRUE로 호출되는것 까진 확인했습니다.

하지만 DB로 파라미터 넘어갈 시 -1이 되어버립니다.

CHECKBOX 체크시 값이 1이 TRUE가 1로 바껴서 파라미터로 DB로 보내는 방법이 없을까요..??

Private Sub CUST_NM_CHK_Click()
    If UserForm2.CUST_NM_CHK.Value = True Then
        UserForm2.CUST_NM_CHK.Value = 1
    End If    
End Sub

이렇게 적어도 TRUE가 호출되고 1로 값이 변경되지가 않네요..

어떻게 하면 1로 파라미터를 DB에서 받을 수 있을까요..??

아 참고로 1은 INT형으로 받으려고 합니다.

고수분들 도움좀 부탁드립니다ㅠ
 
[불량 게시물 신고]  
참서리VBA에서 true =-1, false =0으로 환산하므로
result = -UserForm2.CUST_NM_CHK.Value로 해 주면
true는 1, false는 0을 리턴해 줄 겁니다.
05-31 (18:30)
삭제 ■신고
개발어려워요
result는 dim result as result로 변수 선언한뒤에

Private Sub CUST_NM_CHK_Click()
    If UserForm2.CUST_NM_CHK.Value = True Then
       result = -UserForm2.CUST_NM_CHK.Value 로 하면되나요?
    End If    
End Sub
05-31 (19:07)
삭제 ■신고
개발어려워요if문에서 true then 다음에 어떻게 써야할지를 모르겠네요..ㅠ05-31 (19:08)
삭제 ■신고
참서리dim result as integer

Private Sub CUST_NM_CHK_Click()

    If UserForm2.CUST_NM_CHK.Value = True Then
       result = -UserForm2.CUST_NM_CHK.Value 로 하면되나요?
    End If    
End Sub
05-31 (20:23)
삭제 ■신고
참서리구체적인 파일을 하나 올려 주세요.05-31 (20:23)
삭제 ■신고
        
  

작성일 : 2019-05-31(18:09)
최종수정일 : 2019-05-31(18:13)