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

작성자:  

 update (gskim10)

추천:  2
파일:     1. NK 발주서.xlsm (330.9KB) 조회:  1437
제목:   시트이벤트 오류,조건식의 테이터 형식오류
     
  * 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.

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

* 아래줄에 질문을 작성하세요 >>엑셀과 엑세스를 연동해서 사용하고 있습니다.
엑셀을 2016을 깔고나서 이문제가 나타나는데요 
'-2147217913 (80040e07)' 런타임 오류가 발생하였습니다.조건식의 테이터 형식이 일치하지 않습니다. 라고 메세지창이 나오는 데요..
원인을 알수가 없어 도움 요청 드립니다.
또한
발주서 데이터를 엑세스로 올리고, 수정하기 위해서 발주번호 기준으로 불러오고 나면, 아래 내용의 시트이벤트가 실행이 되질 않는데 원인이 무었인지 알수가 없어 글을 올림니다.
수정할 부분이 있으면 어느부분인지 부탁 드립니다.

Private Sub Worksheet_Change(ByVal Target As Range)
     

     If Target.Address = "$D$4" And bGubun <> "2" Then '발주담당
    
         Call DBOpen
             
             S_발주번호 = Cells(4, 4) & Format(Cells(3, 4), "yy-mm") & "-NK"
             
             mySql = "SELECT MAX( 발주순번) + 1 FROM 발주서"
             
             mySql = mySql & " Where 발주담당자 & left(발주번호,len(발주번호)-3) = '" & S_발주번호 & "'"
             
             Call Execute_SQL(mySql)
             
             If IsNull(rs.Fields(0)) Then
                 Cells(1, 1) = 1
             Else
                 Cells(1, 1) = rs.Fields(0)
             End If
         Call DBClose
     End If
     
     
 End Sub
 
[불량 게시물 신고]  
slgi코드만으로는 분석이 어렵습니다. 

데이터는 크게    
1.문자열
2.숫자
3.날짜
이렇게 나눕니다. 
문자는 영문자,한글,숫자 모두 포함됩니다. 
숫자는 0~9 까지만 들어가야 합니다. 
문자와 숫자의 설정이 맞지 않을경우 데이터 형식오류가 발생합니다.
07-26 (11:59)
삭제 ■신고
update감사 합니다.
07-28 (15:54)
삭제 ■신고
        
  

작성일 : 2021-07-22(15:26)
최종수정일 : 2021-07-22(15:26)