Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


3411 / 9994 ←次へ | 前へ→

【9844】Re:レコードの登録のタイミング
質問  さつき  - 07/9/17(月) 19:18 -

引用なし
パスワード
   hatena さん、その節は大変お世話になり、ありがとうございました。
hatenaさんに教えていただいたシステムを運用しております。とても快適に使うことができ、助かっております。

>DoCmd.RunCommand acCmdSaveRecord
>で強制的にレコード保存すればいいかと。

DoCmd.RunCommand acCmdSaveRecordの使い方を調べて、コードを記述し、動かしてみました。
私がわかった範囲では、フォームの元になっているテーブルに保存する形にしかできませんでした。
今までは、下記のように記述して、「名簿」テーブルからのデータに「日付」や「出欠(yes/no)」を追加して「出欠」テーブルに保存していました。
「出欠」欄にチェックのないレコードにもdate()で、当日の日付を入れていく形です。これによっていつに欠席したかを検知し、色分けしています。
また、「名簿」テーブルにあるすべてではなく、一部のフィールドだけを抜粋して保存しております。
これと同じことをするために、何かよい方法ありますでしょうか?

Private Sub 登録_Click()

Dim CN As ADODB.Connection
Dim CMD As New ADODB.Command
Dim RS As New ADODB.Recordset
Dim RS2 As New ADODB.Recordset

  Set CN = CurrentProject.Connection

  Set RS2 = New ADODB.Recordset
  RS2.Open "出欠", CN, adOpenStatic, adLockOptimistic

  With CMD
    .ActiveConnection = CN
    .CommandText = "SELECT * FROM 名簿 " _
           & "WHERE クラス ='" & Me.クラス選択 & "' " _
            & "AND 曜日='" & Me.曜日選択 & "'"
    .CommandType = adCmdText
  End With
  
    Set RS = CMD.Execute
 
  Do Until RS.EOF
    RS2.AddNew
      RS2!生徒番号 = RS!生徒番号
      RS2!出席日 = Date
      RS2!出欠 = RS!出欠
      RS2!振替予定日 = RS!振替予定日
      RS2!チケット受講 = RS!チケット受講
    RS2.Update
    RS.MoveNext
  Loop
  RS.Close

End Sub

1,251 hits

【9841】レコードの登録のタイミング さつき 07/9/15(土) 20:04 質問[未読]
【9842】Re:レコードの登録のタイミング hatena 07/9/16(日) 9:18 回答[未読]
【9844】Re:レコードの登録のタイミング さつき 07/9/17(月) 19:18 質問[未読]
【9847】Re:レコードの登録のタイミング hatena 07/9/18(火) 10:10 回答[未読]
【9849】Re:レコードの登録のタイミング さつき 07/9/18(火) 11:57 お礼[未読]

3411 / 9994 ←次へ | 前へ→
ページ:  ┃  記事番号:
1078201
(SS)C-BOARD v3.8 is Free