Access VBA는 로그인 한 사용자와 다른 자격 증명을 사용하여 네트워크 폴더에 액세스합니까?

마이클 브루 쉬

Microsoft Access 2016 데이터베이스에서 Excel 스프레드 시트에 연결하려고합니다. Excel 스프레드 시트가 포함 된 폴더에 대한 권한을 받았으며 이제 여기에서 파일을 생성 / 열기 / 편집 할 수 있습니다. 이 스프레드 시트를 연결할 때의 문제는 워크 시트 이름이 예고없이 변경된다는 것입니다 (다른 프로그램에서 내보냄).

Access GUI에서 Excel 스프레드 시트에 연결된 테이블을 만들 수 있고 쿼리가 제대로 실행되지만 워크 시트 이름이 변경되면 연결이 끊어집니다. DoCmd.TransferSpreadsheet 메서드를 사용하여 Access 데이터베이스를 열 때마다 스프레드 시트를 삭제하고 다시 연결하거나 삭제 / 다시 가져올 수 있다고 생각했지만 오류 3051 : 파일이 잠겨 있거나 권한이 없습니다 (패러 프레이징 됨). ).

스프레드 시트를 다른 공유 폴더로 옮기고 완벽하게 연결되기 때문에 코드가 작동한다는 것을 알고 있습니다. 액세스해야하는 폴더에 테스트 스프레드 시트를 넣었는데 동일한 오류가 발생합니다.

그래서 그것은 내가 작업하는 데 필요한 폴더를 제외한 모든 곳에서 작동합니다. 모든 것이 권한 문제를 가리키는 것처럼 보이지만 내 Sys 관리자는 그것이 문제가 아니라고 말합니다.

GUI에서는 작동하지만 VBA에서는 작동하지 않는 이유는 무엇입니까? 나는 파일이 누구에게도 열리지 않는다는 것을 확실히 알고 있습니다. VBA는 로그인 한 사용자와 다른 자격 증명을 사용합니까?

다음 줄에서 실패합니다. DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "tblWeeklySeniorityReport", StrXls, True

마이클 브루 쉬

나는 그것을 알아.

Windows 예약 작업에서 실행되는 여러 Access DB가 있습니다. 이 작업의 문제점은 "가장 높은 권한으로 실행"으로 설정되어 있다는 것입니다. 액세스해야하는 폴더에 대한 권한이 부여되지 않은 일종의 관리자와 함께 이러한 방식으로 실행해야합니다. 이 상자의 선택을 취소하고 폴더에 대한 액세스 권한이있는 로그인 된 사용자 자격 증명으로 실행됩니다.

감사!

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관