連続したサブフォームのレコードをループし、特定のフィールドの値をクリアする関数を記述しようとしています(Entity_Under_Considerationは、コンボボックスで表される参照フィールドです)。サブフォーム)を作成します。Access VBA:連続サブフォームのレコードセットを編集する
以下は動作しません。それはどんなエラーも投げません。私はどこに間違っているのか誰にでも見える?
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
あなたはクローン化されたレコードを更新した後、フォームのレコードを更新するように見えませんか? – Minty
また、変更はまだフォームのレコードセットに適用されています。どうしたの? – DrewCraven
忍者のアクセスのノームは、バックグラウンドで働いていますか?多くの場合、レコードセットの更新はすぐに表示されますが、必ずしもそうではありません。ローカルテーブルかリンクテーブルがどのように接続されているかによって大きく左右されることがあります。 – Minty