Access VBA: 在连续子窗体中编辑 RecordSet
Access VBA: Editing a RecordSet in a continuous subform
我正在尝试编写一个函数来循环遍历连续子表单中的记录并清除特定字段中的值(Entity_Under_Consideration,这是一个由子表单上的组合框表示的查找字段)每条记录。
以下无效。它也不会抛出任何错误。谁能看出我哪里出错了?
Public Function clearEUCData(subform As Control)
'take a clone of the subform's recordset
Dim entityRecSet As Recordset
Set entityRecSet = subform.Form.Recordset.Clone()
'if there are any records in the subform...
If entityRecSet.RecordCount > 0 Then
'start with the first record
entityRecSet.MoveFirst
'iterate through each row, clearing the data in the EUC field
Do Until entityRecSet.EOF
With entityRecSet
.Edit
Entity_Under_Consideration = 0
.Update
End With
entityRecSet.MoveNext
Loop
End If
'close and purge the cloned recordset
entityRecSet.Close
Set entityRecSet = Nothing
End Function
你必须更明确:
With entityRecSet
.Edit
.Fields("Entity_Under_Consideration").Value = 0
.Update
End With
我正在尝试编写一个函数来循环遍历连续子表单中的记录并清除特定字段中的值(Entity_Under_Consideration,这是一个由子表单上的组合框表示的查找字段)每条记录。
以下无效。它也不会抛出任何错误。谁能看出我哪里出错了?
Public Function clearEUCData(subform As Control)
'take a clone of the subform's recordset
Dim entityRecSet As Recordset
Set entityRecSet = subform.Form.Recordset.Clone()
'if there are any records in the subform...
If entityRecSet.RecordCount > 0 Then
'start with the first record
entityRecSet.MoveFirst
'iterate through each row, clearing the data in the EUC field
Do Until entityRecSet.EOF
With entityRecSet
.Edit
Entity_Under_Consideration = 0
.Update
End With
entityRecSet.MoveNext
Loop
End If
'close and purge the cloned recordset
entityRecSet.Close
Set entityRecSet = Nothing
End Function
你必须更明确:
With entityRecSet
.Edit
.Fields("Entity_Under_Consideration").Value = 0
.Update
End With