VBA로 ORACLE 불러오는데 안되네요ㅠㅠ

VBA
작성자
Woodong
작성일
2022-10-27 08:25
조회
104
엑셀버전 : 엑셀2019

운영체제 : 윈도우10

질문 요약 : VBA 오라클 불러오기

안녕하세요. VBA로 ORACLE 연동해서 자동화 기능을 쓰고있습니다.

제가 만든걸 옆 동료와 같이 사용하려고 하는데

제 자리에서는 잘 돌아가는게 옆 동료자리에서는
----------------------------------------------------------------
'-2147467259 (80004005)' 런타임 오류가 발생하였습니다:

자동화 오류입니다

지정되지 않은 오류입니다.

-----------------------------------------------------------------

이렇게 오류가 뜨고 안됩니다.

 

Sub Insert()

 

Dim cnn AS ADODB.Connection

Dim rs AS New ADODB.Recordset

Dim Sqlstring as String

 

Set cnn = New ADODB.Connection

With cnn

.ConnectionString = "DSN=Oracle; Uid=system; Pwd=oracle;"

.Mode = adModeWrite

.CommandTimeout = 120

.Open

End With

If cnn.State = adStateOpen then

MsgBox("Connect")

Else

Exit Sub

End if

 

Set rs = New ADODB.Recordset

rs.CursorLocation = adUseClient

strSQL = " ~~~~~~~~~ "  ( 쿼리문은 생략했습니다. )

Set rs = Nothing

rs.Open Source:=strSQL, Activeconnection:= cnn, CursorType: = adOpenForwardOnly, LockType:=adLockReadOnly, Options:= adCmdText

IF rs.E0F Then

MsgBox "조회조건 자료 X"

Else

rs.MoveFirst

With Activesheet

.Range("G2").CopyFromRecordset rs

END With

End If

~~

 

이런식으로 짜여있는데

제 자리에서는 잘 돌아가서 자동화가 됐는데 동료자리에서는 안되네요ㅠㅠ

ODBC 데이터 원본 관리자(64비트)에 Oracle in instantclient 추가해서 사용하는데 Test Connection은 Connection successful 이라고 뜨고, 코드 중 If cnn.State = adStateOpen then MsgBox("Connect") 이부분에서 Connect 라고 표시됩니다

Delete 문같은걸 써도 Oracle에 반영이 안되는거 보면..

뭔가 표면상으로만 접속이 됐다고 표시되고, 실제로는 접속이 안된 느낌입니다.

뭐가 문제일까요ㅠㅠ

ODBC가 문제일까요?ㅠㅠ

스크랩
공유
전체 6

  • 2022-10-27 19:18

    @Woodong 님 연결스트링이 잘못된게 아닐까요?

    https://stackoverflow.com/questions/34803106/how-to-connect-to-oracle-11-database-from-net/34805999#34805999

    ConnString을 바꿔서 힌반 테스트해보세요..


    • 2022-10-27 19:18

      • 2022-10-28 08:38

        @엑셀은즐거워 님 답변 감사합니다.

        같은 코드로 돌리는데 제자리에서는 잘 돌아가서는데 연결스트링이 문제가 되지는 않을거 같은 생각이 들어서요ㅠㅠ

        과거버전으로 돌리는것도 해봤었는데 다 안되네요

        돌렸을때 연결은 됐다고 표시가 되니까...이게 더 머리아프네요ㅎㅎㅎ


  • 2022-10-27 09:03

    @Woodong 님 아래처럼 Early Binding을 하려면 VBA에서 참조 Reference를 선택해 줘야 합니다.

    다른 사람이 쓰도록 배포할 때에는 일일이 설정을 다 해줘야 하니 번거롭습니다.

    Dim cnn AS ADODB.Connection
    Dim rs AS New ADODB.Recordset

     

    이것을 Late Binding으로 바꿔주면 아마 해결되지 않을까 싶습니다.

    Dim cnn As Object
    Dim rs As Object
    Set cnn = CreateObject("ADODB.Connection")
    Set rs = CreateObject("ADODB.Recordset")

     


    • 2022-10-27 09:13

      @원조백수 님 답변 감사합니다. 하지만 바꿔서 했는데도 같은오류가 발생하네요ㅠㅠ

      참조레퍼런스라는게
      도구 -> 참조 말씀하시는걸까요? 이부분은 동일하게 세팅했습니다.


  • 2022-10-27 08:27

    이것저것 찾아봤을때 Office 프로그램 업데이트 버전껄 이전껄로 돌리면 될 수 있다고해서 시도해봤는데도 안되네요ㅠㅠ


전체 8,503
번호 카테고리 제목 작성자 작성일 추천 조회
알림
「🎉 올해의 책 투표」 '진짜쓰는 실무엑셀' 이 후보에 선정되었습니다! (👉깜짝 이벤트) (51)
오빠두엑셀 | 2022.11.07 | 추천 23 | 조회 7790
오빠두엑셀 2022.11.07 23 7790
공지사항 함수/공식
⭐ [더 나은 커뮤니티 문화를 위한 Q&A 글 작성 규칙] ⭐ (105)
오빠두엑셀 | 2021.10.28 | 추천 135 | 조회 8504
오빠두엑셀 2021.10.28 135 8504
44941 함수/공식
New COUNT 함수 관련 2가지 조건의 수를 구하고 싶습니다. 첨부파일 (2) 답변완료
2039290jf1 | 14:11 | 추천 0 | 조회 17
2039290jf1 14:11 - 17
44940 VBA
New 엑셀 매크로 AutoFill 관련 문의
원더우먼 | 12:53 | 추천 0 | 조회 22
원더우먼 12:53 - 22
44938 기능/도구
New 온라인그림 선택이 안되요. 첨부파일
굿걸♡ | 11:57 | 추천 0 | 조회 16
굿걸♡ 11:57 - 16
44937 함수/공식
New 다중조건 if 관련 문의 (2) 답변완료
지도현 | 11:50 | 추천 0 | 조회 29
지도현 11:50 - 29
44935 함수/공식
New 엑셀 2007,2010 오프라인 도움말파일 구해요
나야 | 11:41 | 추천 0 | 조회 15
나야 11:41 - 15
44932 VBA
New VBA FIND를 통해서 일치하는 값 찾을때까지 검색 후 만약에 없으면 해당셀에 찾는값 없음 넣기
고바마 | 11:02 | 추천 0 | 조회 24
고바마 11:02 - 24
44930 VBA
New vba를 이용하여 수식 결과값 추출 시트를 만들고 싶습니다. 첨부파일 (1)
코모 | 10:26 | 추천 0 | 조회 35
코모 10:26 - 35
44929 함수/공식
New [관심]!!경우의수 적용하여, 값 판단법 좀 알려주세요..ㅜ 엑셀파일첨부파일 (5)
ak스타 | 10:22 | 추천 0 | 조회 25
ak스타 10:22 - 25
44927 함수/공식
New 다중 sumifs 기타 값 계산 엑셀파일첨부파일 (1)
선크 | 10:18 | 추천 0 | 조회 24
선크 10:18 - 24
44916 함수/공식
New 엑셀 실시간으로 퍼센트가 변하는 시간계산기
KangU | 2022.11.27 | 추천 0 | 조회 38
KangU 2022.11.27 - 38
44915 VBA
New 괄호안의 숫자 합계 구하기 VBA 또는 수식 엑셀파일첨부파일 (4) 답변완료
007 | 2022.11.27 | 추천 0 | 조회 58
007 2022.11.27 - 58
44913 함수/공식
New 함수 결과값이 이상합니다 첨부파일 (1)
엄기용 | 2022.11.27 | 추천 0 | 조회 28
엄기용 2022.11.27 - 28
44907 함수/공식
New 시간만 구하는 방법.. 첨부파일 (3)
candle0723 | 2022.11.27 | 추천 0 | 조회 35
candle0723 2022.11.27 - 35
44904 문서서식
New 표시형식 문의 드립니다 (1)
거꾸로문 | 2022.11.26 | 추천 0 | 조회 27
거꾸로문 2022.11.26 - 27
44901 VBA
New 안녕하세요. vba로 단위 변환 질문드립니다.
Jes | 2022.11.26 | 추천 0 | 조회 36
Jes 2022.11.26 - 36
44899 차트/그래프
New 슬라이서 서식을 변경 한 후, 다른 엑셀 파일에서도 사용할 수 있는 방법이 있을까요?
twou**** | 2022.11.26 | 추천 0 | 조회 27
twou**** 2022.11.26 - 27
44896 VBA
New 여러 문자들 중 참조 문자에 있는 값 찾기 vba 엑셀파일첨부파일 (4)
007 | 2022.11.26 | 추천 0 | 조회 60
007 2022.11.26 - 60
44892 기능/도구
New 필터랑 행 숨기기 된 상태에서 자동채우기 안 되나요?
오리파 | 2022.11.25 | 추천 0 | 조회 25
오리파 2022.11.25 - 25
44887 함수/공식
New 다중조건을 만족하는 여러개의 값 구하는 함수식 문의드립니다. (1)
함수시르미 | 2022.11.25 | 추천 0 | 조회 50
함수시르미 2022.11.25 - 50
44886 VBA
New 엑세스 및 엑셀 연동 VBA INSERT구문 질문 엑셀파일
H.B | 2022.11.25 | 추천 0 | 조회 33
H.B 2022.11.25 - 33
44885 함수/공식
New 엑셀로 전투 시뮬레이션을 만들 수 있을까요? (2)
네버 | 2022.11.25 | 추천 0 | 조회 50
네버 2022.11.25 - 50
44881 VBA
New VBA 링크 설정시 현재시트로 설정하는법 첨부파일 (2)
엑셀왕이될거야22 | 2022.11.25 | 추천 0 | 조회 26
엑셀왕이될거야22 2022.11.25 - 26
44878 함수/공식
New 인덱스 매치 시 범위 합계구하기 엑셀파일 (2)
야근쟁이 | 2022.11.25 | 추천 0 | 조회 44
야근쟁이 2022.11.25 - 44
44877 함수/공식
New 조건1,조건2를 만족할때 결과값을 가지고 오는 방법 첨부파일 (2)
보연아빠 | 2022.11.25 | 추천 0 | 조회 51
보연아빠 2022.11.25 - 51
44876 함수/공식
New 같은 텍스트가 있을때 순번을 매기는 방법 첨부파일 (2)
보연아빠 | 2022.11.25 | 추천 0 | 조회 45
보연아빠 2022.11.25 - 45
44875 VBA
New db 배열안에 날자 데이터가 포함되어 있는데 바로 전에 가장 가까운 날자를 선택할수 있을까요? 첨부파일
후훗 | 2022.11.25 | 추천 0 | 조회 29
후훗 2022.11.25 - 29
44873 함수/공식
New 바코드 찍었을때 번호 하나마다 값 불러오기 엑셀파일첨부파일
김영준 | 2022.11.25 | 추천 0 | 조회 34
김영준 2022.11.25 - 34
44871 함수/공식
New 병상수 변경시 엑셀 통계..너무 어려워요.. 엑셀파일첨부파일 (2)
tada**** | 2022.11.25 | 추천 0 | 조회 32
tada**** 2022.11.25 - 32
44870 차트/그래프
New 그래프 그리기 엑셀파일첨부파일
뉴비 신입사원 | 2022.11.25 | 추천 0 | 조회 42
뉴비 신입사원 2022.11.25 - 42
44866 함수/공식
New 중복된 데이터가 여러개일 경우 각각 색을 표시하려고 합니다. 엑셀파일첨부파일 (1)
한가한 | 2022.11.25 | 추천 0 | 조회 34
한가한 2022.11.25 - 34