我尝试过把我的访问表数据到SQL服务器,但我得到它说带块变量VBA代码传输Access表到SQL Server
对象变量或错误没有设置
我已经连接我的Access数据库与SQL服务器,但现在面临问题传输数据到SQL Server与VBA代码。
你能帮我吗?
这里是我的代码:
Public Sub ADOtest()
Dim ADOConn As New ADODB.Connection
Dim ADOCom As New ADODB.Command
On Error Resume Next
ADOConn.ConnectionString = "Driver={SQL Server};Server=IT-TEMP2-8470P\SQLEXPRESS2014;Database=Discrepancy;Trusted_Connection=True;"
ADOConn.Open
Debug.Print ADOConn.State
Dim db As Database
Dim Discrepancy As Database
Set db = Discrepancy
Dim ID As Variant
db.Execute "INSERT INTO [ODBC;DRIVER=SQL Server;SERVER=IT-TEMP2-8470P\SQLEXPRESS2014;DATABASE=Discrepancy].SFTransfersDB (ID, TO) SELECT ID,TO FROM SFTransfersDB"
End Sub
我得到的错误在第二届最后一行:
db.Execute "INSERT INTO [ODBC;DRIVER=SQL Server;SERVER=IT-TEMP2-8470P\SQLEXPRESS2014;DATABASE=Discrepancy].SFTransfersDB (ID, TO) SELECT ID,TO FROM SFTransfersDB"
'ADOConn.Execute'而不是'db.Execute',但您可能需要ACE或Jet提供程序来使用'[ODBC;'部分 – Slai
您似乎在将ADO与DAO混淆。您的ADO连接字符串已经指定了数据库,因此不需要单独的对象。而且,一旦在同一个数据库中追加查询就不需要分布式查询子句。 – Parfait