2017-05-25 122 views
0

我希望将记录从表格Sheet2移动到表格Sheet3。我得到错误为VBA将记录从一个表格移动到另一个表格

当对象打开时无法执行操作。

With Acon 
    .Provider = "Microsoft.ACE.OLEDB.12.0" 
    .ConnectionString = "Data Source=" + myFileNameDir 
    .Open 
End With 

With Rs 
    .CursorLocation = adUseClient 
    .CursorType = adOpenDynamic 
    .LockType = adLockOptimistic 
    .ActiveConnection = Acon 
    .Source = "Select * from [Sheet2] where [Manager Com]= 'OK'" 
    .Open 
End With 

With Rs1 
    .CursorLocation = adUseClient 
    .CursorType = adOpenDynamic 
    .LockType = adLockOptimistic 
    .ActiveConnection = Acon 
    .Source = "Select * from [Sheet3]" 
    .Open 
End With 

Dim strSQL As String 
strSQL = "INSERT INTO Sheet3 SELECT * From Sheet2 where [Manager Com]= 'OK'" 
Rs.Open strSQL 

Rs1.Close 
Rs.Close 
Acon.Close 

Set Rs = Nothing 
Set Acon = Nothing 
+0

看到你的旧问题,你正在为代码格式化做同样的错误。请使用降价编辑器中的“{}”选项来正确格式化代码。 – Arulkumar

回答

0

我怀疑那是因为你正试图从查询执行语句。 请尝试以下操作:

Dim CMD As Object 
Dim strSQL As String 

With Acon 
    .Provider = "Microsoft.ACE.OLEDB.12.0" 
    .ConnectionString = "Data Source=" + myFileNameDir 
    .Open 
End With 

Set CMD = CreateObject("ADODB.Command") 
CMD.ActiveConnection = ACon 


strSQL = "INSERT INTO Sheet3 SELECT * From Sheet2 where [Manager Com]= 'OK'" 

CMD.CommandText = strSQL 
CMD.Execute 

Acon.Close 
相关问题