我有一个记录集,每个记录缺少一个字段,并希望通过查找某些条件从表单中添加一些数据。我首先使用select查询将数据放到表单上并尝试反转值的赋值,但它不起作用,因为它表示运行时错误3027'数据库或对象是只读的。&#39 ;我想这是因为我运行了一个select查询来获取信息,但是如何将数据输入到相同的记录中。我使用的代码如下 -
Private Sub CmdAppend_Click()
Dim dbsNorthwind As dao.Database
Dim rstAmend As dao.Recordset
Dim qdfAmend As dao.QueryDef
Dim n As Integer
Set dbsNorthwind = CurrentDb
Set qdfAmend = dbsNorthwind.QueryDefs("Get_Questions_NTL")
qdfAmend.Parameters(0) = [Forms]![TeamLeader]![ComClientNotFin]
qdfAmend.Parameters(1) = [Forms]![TeamLeader]![ComDateSelect]
Set rstAmend = qdfAmend.OpenRecordset(dbOpenDynaset)
n = 0
rstAmend.MoveFirst
Do Until rstAmend.EOF
n = n + 1
rstAmend.Fields("ManagerID") = Form.Controls("SC" & n).Value
rstAmend.MoveNext
Loop
End Sub
答案 0 :(得分:0)
您必须使用记录集对象的.Edit和.Update方法来更新记录。您收到错误是因为您尝试将值分配给只读属性。