任何人都可以請幫我理解爲什麼Microsoft.Ace.OLEDB.16.0在Office 2016 x86的Windows 10 x64上不起作用? 我得到運行時錯誤-2147467259 (80004005)
使用下面的代碼被打開OLEDB 16.0
連接時:Microsoft.Ace.OLEDB.16.0
Public Sub ValidityDateCheck_SRT_Templates()
NameFile = "x"
sConn = "Provider=Microsoft.ACE.OLEDB.16.0;WSS;IMEX=1;RetrieveIds=Yes;" & _
"DATABASE=" & sSHAREPOINT_SITE & ";" & _
"LIST=" & sDEMAND_ROLE_GUID_ML & ";"
Set cn = New ADODB.Connection
Set rst = New ADODB.Recordset
With cn
.ConnectionString = sConn
.Open '--> **HERE I GET THE ERROR**
End With
Rs = "SELECT * FROM [Template Library];"
rst.Open Rs, cn, adOpenStatic, adLockOptimistic
Do Until rst.EOF
If Left(rst![Name], InStr(1, rst![Name], "#") - 1) = TemplateID Then
NameFile = rst![Name]
On Error GoTo Skip
ActualVdate = rst![Validity Date]
TransVdate = rst![Transition Period End]
Exit Do
Else
rst.MoveNext
End If
Loop
Skip:
rst.Close
的interesant部分是在調試,如果我用12.0,然後再改爲16.0並保存,它會打開它。然後,如果我重新打開文件,我會得到相同的錯誤。 請幫幫我吧。
嘗試12.0。例如。 'Provider = Microsoft.ACE.OLEDB.12.0'請參閱:https://www.connectionstrings.com/sharepoint/ –
感謝您的回答。我試圖使用12.0,但我也必須安裝Access數據庫引擎2010和訪問運行時2010才能工作。但是這不是一個解決方案,因爲有很多計算機和沒有AD來運行批量安裝。我必須做16.0工作。 – antonov