사실 간단하고 어려울게 없는데, 설명하기 좀 복잡해서 예시를 들어 남긴다.
아래 예시에서 필요한 부분만 바꿔서 쓰면 될 듯.
참고로 오피스는 2010을 사용 했다.
먼저 나는 엑세스 DB에 접속 했다가 접속을 끊는 함수를 만들어서 VBA에서 활용 할 목적으로 아래와 같이 사용 하고 있음을 밝힘.
----
시작.
먼저 VBA 에서 Accese 에 접속 할 수 있도록 [VBA 창] > [도구] > [참조] > [Microsoft DAO 3.6 Object Library] 를 참조 항목으로 설정 한다.
그러고 나서 Module 을 하나 만들거나 기존 Module 에 아래와 같이 코딩.
----
Const Path = "(엑세스 파일 경로)"
Const Connect = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" & Path & ";"
Public DB As ADODB.Connection
Public Sub OpenDB()
Set DB = New ADODB.Connection
DB.Open Connect
End Sub
Public Sub CloseDB()
DB.Close
End Sub
----
하나씩 설명 하자면,
- Const Path = "(엑세스 파일 경로)"
엑세스 파일 경로를 미리 지정해서 여러군데서 사용 할 때 쉽도록 만든다
사실 Connect 부분에 직접 써도 상관 없음 - Const Connect = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" & Path & ";"
데이터베이스 오픈 할 때 사용 할 파라미터 - Public DB As ADODB.Connection
DB 라는 이름으로 커넥션을 선언함 - Public Sub OpenDB() ~ End Sub
먼저 DB 라는 커넥션을 새로운 커넥션으로 만들고, 해당 커넥션을 Connect 라고 선언한 파라미터로 열기
앞으로는 DB에 접속 하기 위해서 이 함수만 Call 하면 됨 - Public Sub CloseDB() ~ End Sub
DB 접속 종료하기 위한 함수
이로써 우리는 VBA 에서 언제나 OpenDB 함수와 CloseDB 함수로 엑세스 DB에 접속 했다가 접속을 종료 할 수 있음.
실제 작업을 위해서는 레코드셋도 선언하고 열어줘야 하는데 그건 다음에 기록으로 남긴다.
이상 끗.
댓글 없음:
댓글 쓰기