0
你好我很新的VBA和即时尝试建立与密码保护的数据库的连接。这是我的代码。连接到密码保护的数据库VBA
Sub CostEntry()
ActiveWorkbook.Sheets.Add.Name = "SAP Sheet"
sConnString = "SourceType:=0, Source:=ODBC;DSN=SAPDATA32;Description=DATA;UID=shareuser;Jet OLEDB:Database Password=1234;APP=Microsoft Office 2016;WSID=AT;DATABASE=DATA"
' Create the Connection and Recordset objects.
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
' Open the connection and execute.
conn.Open sConnString
Set rs = conn.Execute("SELECT MBEW.BWKEY, MBEW.STPRS, MBEW.MATNR" & Chr(13) & "" & Chr(10) & "FROM SAPDATA.dbo.MBEW MBEW" & Chr(13) & "" & Chr(10) & "WHERE (MBEW.BWKEY='1010')")
' Check we have data.
If Not rs.EOF Then
' Transfer result.
ActiveWorkbook.Sheets("SAP Sheet").range("A1").CopyFromRecordset rs
' Close the recordset
rs.Close
Else
MsgBox "Error: No records returned.", vbCritical
End If
' Clean up
If CBool(conn.State And adStateOpen) Then conn.Close
Set conn = Nothing
Set rs = Nothing
End Sub
大部分它我也从互联网复制我也认为这是从stackoverflow。我收到错误消息“运行时错误”-2147467259(8000400)':找不到可安装的ISAM“。我插入行Provider=Microsoft.ACE.OLEDB.12.0
但它只是给了我另一个错误消息。 Thnak你提前。
我增加它像这样sConnString =“SourceType中:= 0,来源:= ODBC; DSN = SAPDATA32; Description = SAPDATA32; UID = shareuser; Provider ='Microsoft.ACE.OLEDB.12.0'; Jet OLEDB:Database Password = asdf; APP = Microsoft Office 2016; WSID = AT000616; DATABASE = SAPDATA“ 但仍显示错误消息“运行时错误”-2147467259(8000400)':找不到可安装的ISAM“ –