我正在使用Excel 2010 VBA从MS Access 2010中检索数据,并使用ODBC连接到SQL Server R2 Express,在我之前的机器中没有问题(32位平台)但是当我得到新机器时,总是说“ODBC连接”到(odbc名称)失败-2147467259“。
从Access 2010到SQL没有问题,但是当我从Excel检索数据时总是会触发此错误。
我检查了用户(DBO)的权限,同一台机器上的所有应用程序,所有服务都已打开,ODBC设置正确。在执行脚本期间,除了行打开表之外,所有OK都正常。
Function RetrieveProjectList()
Dim strConn As String
Dim conn As New ADODB.Connection
Dim rec As New ADODB.Recordset
Dim intColCount As Integer
Dim strName As String
Dim strSQL As String
On Error GoTo Error_Trap
strName = ThisWorkbook.path & "\DBSource V0.1.accdb"
Set conn = New ADODB.Connection
strConn = "Provider=microsoft.ACE.oledb.12.0;"
strConn = strConn & "Data Source=" & strName & ";"
conn.Open ConnectionString:=strConn
Set rec = New ADODB.Recordset
strSQL = "SELECT qryProjectList.* " & _
"FROM qryProjectList ORDER BY tblArea.AreaName,tblProject.ProjectName;"
rec.Open strSQL, conn, adOpenDynamic, adLockOptimistic
'Retrieve data from Access
rec.MoveFirst
If rec.Fields.count <> 0 Then
语法“rec.open ....”后弹出错误。 在其他机械都可以。
问题:
这与操作系统版本64位有关吗?我错过了什么? 任何建议都将受到高度赞赏。
谢谢,seageath