2017-01-03 8 views
0

エクセルファイルの外部接続をここで共有アクセスデータベースに使用していますが、何らかの理由でファイルを他の人が編集できなくなっています。まさにこれが起こっているなぜ私は見当がつかないが、ここで相談するコードです:Excelと外部データへのアクセスリンクファイルソースファイル

プロバイダ= Microsoft.ACE.OLEDB.12.0は、ユーザーID =管理;データソース= G:\中東\ Controles Gerencias \ Rentabilidade Jet OLEDB:システムデータベース= ""; Jet OLEDB:レジストリパス= ""; Jet OLEDB:エンジンタイプ= 5; Jet OLEDB:データベースロックモード= 0 Jet OLEDB:新しいデータベースパスワード= ""; Jet OLEDB:システムデータベースの作成= False; Jet OLEDB:データベースの暗号化= False; Jet OLEDB:グローバルなバルクオプス= 2; Jet OLEDB:グローバルバルクトランザクション= Jet OLEDB:SFP = False; Jet OLEDB:サポートする複合データ= False; Jet OLEDB:バイパスUserInfo検証= False

0デフォルトExcelで

答えて

0

は(したがって、使用中のAccessデータベースをロックしません。)

の構成のいかなる量を、接続文字列を経由してこれをやってから、Excelを終了しますオープンOLEDB/ODBC接続を保持します。期待とは逆に、共有を拒否するモードを設定するか、または読み取りのみで問題が解決されるわけではありません。ただし、.MaintainConnectionプロパティを使用してこの動作を防止するために、コード経由で接続のプロパティを変更できます。このプロパティを変更するためのUI設定はありません。

このコードを試してみてください。

Function unlock_conns() 
Dim conn 

For Each conn In ActiveWorkbook.Connections 
    Select Case conn.Type 
     Case xlConnectionTypeOLEDB 
      conn.OLEDBConnection.MaintainConnection = False 
     Case xlConnectionTypeODBC 
      conn.ODBCConnection.MaintainConnection = False 
    End Select 
Next conn 

End Function 
関連する問題