2017-09-07 1 views
0

다른 원격 시스템에서 ADODB 연결을 통해 공유 경로에있는 Excel 통합 문서에 액세스하려고합니다. 여러 원격 시스템이 동일한 엑셀 시트에 액세스하려고 할 때, 그것은 다음과 같은 오류를 슬로우하는 :ADODB를 통해 Excel 통합 문서에 액세스 - 동시에 여러 사용자가 있음

The Microsoft Office Access database engine cannot open or write to the file ''. It is already opened exclusively by another user, or you need permission to view and write its data.

연결 문자열이을 사용 :

strConnection_Write = "Provider=Microsoft.jet.OLEDB.4.0;Data Source=" & _ 
    Runmanager_path & ";Mode= Share Deny None" & _ 
    ";Extended Properties=""Excel 8.0;HDR=Yes;"";" 

나에게 해결책을 제안하십시오.

+2

파일이 이미 열려있는 경우에는 연결을 시도하기 전에이있다 (확인하실 수 있습니다 vbscript에서 그렇게하는 여러 가지 방법 .. 그냥 검색을해라.) 파일이 열려 있으면 스크립트를 기다리거나 종료 할 수 있습니다. 그렇지 않은 경우 연결을 시도 할 수 있습니다. – Zac

답변

1
내가 잠시 다시 OLEDB와 같은 문제로 실행 DAO 사용하여 과거 가지고

...

Dim DBworkbook As DAO.Database 
Dim DBSheet As DAO.Recordset 

Set DBworkbook = OpenDatabase("C:\File.xls", False, False, "Excel 8.0;HDR=Yes;") 
Set DBSheet = DBworkbook.OpenRecordset("SELECT * FROM [Sheet1$]") 

DBSheet.MoveFirst 
Do Until DBSheet.EOF 
    If DBSheet!Name = "Bob" Then 
    DBSheet.Edit 
    DBSheet!Addeess = "5 Something Street" 
    DBSheet.Update 
    End If 
    DBSheet.MoveNext 
Loop 
관련 문제