Recordsetで固定して順繰りに更新する、というアイデアは考えていたものの、何故か1件しか更新されなかったりして結局、仕様が固まってから数ヶ月もかかってしまった。
まあ、他のものを作るのが忙しくてこちらに時間はほとんど割けなかったものの、ずっと気になっていたんよねぇ~。
日曜日にこれを調べるだけで3時間かかっちゃったし・・・。ふう~。
実際は、別のフォーム上で入力した値を一括入力&更新し、入力値がnullの場合、エラーメッセージを出し、null以外は更新するという仕様。
ようやく実装完了! 昨日は、これ出来ただけでもう速攻帰りたかった。たまにはご褒美必要だよなあ~。みんな忙しいそうで、そうもいきませんでしたが、一人でこっそり大喜びしてました(笑顔)。
だって、これで仕様として構想した機能でプログラム上で実現できなかったものが無くなったのですからネ!
勿論、出来るだろうとは思っていましたが、実際にどう実現するか分からない状態で漠然と考えていたものを形にするのは面白いなあ~。
ーーーーーーーーーーーーーーーーーーーーーーーーー
同一フォーム上にある、テキストボックス「入力」内の値を、コントロール「グループ」へ入れてレコードを更新。それをレコードセットの最後まで実行。
refreshでフォーム上へ反映させる。
Private Sub 一括登録_Click()
Dim RS As Dao.Recordset
Set RS = Form.Recordset.Clone
Do Until RS.EOF
RS.Edit
RS!グループ = Form!入力
RS.Update
RS.MoveNext
Loop
Me.Refresh
RS.Close
Set RS = Nothing
End Sub