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

 난망초련 (k7mate)

추천:  0
파일:     조회:  721
제목:   액세스에서 다양한 종류의 파일 열기
     
  엑셀에서 한글, PDF 등의 다양한 형식의 파일을 여는
코드를 아래와 같이 만들어서 잘 쓰고 있습니다.

Sub exVariousOpener(Optional PickingPath As String)
'   ■ 외부 프로시저의 호출을 받아 제공된 경로(PickingPath)의 파일을 실행
'   □ 경로(PickingPath) 제공이 없으면, 【FilePicker】로 해당 값을 취득함
    On Error Resume Next
    Dim Selector As Object
    If PickingPath = Empty Then
        Set Selector = Application.FileDialog(msoFileDialogFilePicker)
        Selector.Show
        If Selector.SelectedItems.Count = 0 Then Exit Sub
        PickingPath = Selector.SelectedItems(1)
    End If
    ThisWorkbook.FollowHyperlink PickingPath
    Set Selector = Nothing
End Sub

질문 취지는...
위의 코드를 액세스에서 사용할 수 있도록 수정하기 위해
도움을 구하려는 것입니다.

위 코드를 액세스에서 실행하면
IF문 내부의 msoFileDialogFilePicker 부분에서
변수가 정의되지 않았다는 오류가 발생됩니다.
액세스에서는 이를 내장 상수로 인식하지 않기 때문인 듯 하구요.

코드 하단부의 ThisWorkbook.FollowHyperlink PickingPath 부분은
수정이 불가피할 것으로 판단됩니다.

그 밖에도 제 생각과 달리 수정할 부분이 있을 수
있겠다 싶기도 하구요.

엑셀과 달리 액세스용 VBA 교재는 턱없이
부족하고 검색도 잘 안되며
Microsoft 또는 Microsoft Office 제품군에 대한
파일 열기 소스는 찾기가 그나마 좀 수월한 편인데...
한글, PDF 등 Microsoft 제품군이 아닌 건
사정이 많이 다르더군요.

행복하시길 바랍니다.
 
[불량 게시물 신고]  
잡초Set Selector = Application.FileDialog(3)
Apllication.FollowHyperlink PickingPath 변경
또는
Microsoft Office 16.0 Object Library 참조하시고 
Apllication.FollowHyperlink PickingPath 변경하여 실행
12-08 (15:37)
삭제 ■신고
난망초련네... 제 액세스에는
Microsoft Office 15.0 Object Library 이더라구요.
엑셀엔 Microsoft Office 16.0 Object Library 인데 말이죠.
그래서, 이런 경우도 있나... 싶고
미정의된 변수 오류의 원인은 그거 같아서, 말씀대로 '3'으로 했구요.
하단부의 파일 열기 구문의 상위 개체를 'Application'으로 변경한다는 점은 '잡초'님 덕분에 알게 되네요.
엑셀, 액세스 양 쪽에 적용해 봤더니 엑셀 쪽에서는
당초의 코드대로 'ThisWorkbook'이어야 하는군요.

정말 감사합니다.
12-09 (20:19)
삭제 ■신고
손님01-21 (14:27)
삭제 ■신고
        
  

작성일 : 2022-12-08(08:25)
최종수정일 : 2022-12-09(20:30)
 


 ◎ 관련글

  제 목   작성자   날짜
액세스에서 다양한 종류의 파일 열기 난망초련 2022-12-08
[RE]액세스에서 다양한 종류의 파일 열기 황동준 2022-12-08