VBA Excel - ACCESS中的UPDATE记录

时间:2013-04-25 18:11:55

标签: excel vba excel-vba access-vba

我遇到了问题。

我想在EXCEL中使用VBA更新Access数据库中的表中的现有记录。

我的代码:

sqlik = "UPDATE query which works in access"

Set ZAP_QUERY2 = baza.CreateQueryDef("", sqlik)

With ZAP_QUERY2

    ![abc] = Edit_Form.abc.Text
    ![bcd] = Edit_Form.bcd.Text
    ![cde] = Edit_Form.cde.Text

End With

当我使用sqlik =“SELECT query for access in access”时,它没有做任何更改。但是使用sqlik =“UPDATE查询在访问中工作”,它说“在此集合中找不到任何对象”

有什么想法吗?

感谢您的帮助

1 个答案:

答案 0 :(得分:3)

使用DAO的解决方案:

...
dim db as DAO.Database, rec as Dao.Recordset
dim strSQL as String
Set db = OpenDatabase("c:\DatabaseFolder\YourDatabase.accdb")
strSQL = "SELECT * FROM yourTable WHERE yourField=1"
Set rec = db.OpenRecordset(strSQL, dbOpenDynaset, dbEditAdd)
With rec
    .MoveFirst
    ![aField] = Edit_Form.abc.Text
    .Update
End With
rec.Close
db.Close
...

希望这有助于你