Microsoft Access 掲示板

ADOでレコードが飛ばされてしまう。 / 5

16 コメント
views
4 フォロー
5

sk様
追加のコードについては、投稿時に端折っただけです。

ご提示の1~5の選択肢については3だと思われます。

下記のコードに書き換えて実行してみました。
それでも同じく残業管理ID 95の残業区分が4にならずに2のままでした。
他の残業区分IDは残業区分が3になっています。

    Dim cn As New ADODB.Connection
    Dim rs As New ADODB.Recordset

    Set cn = CurrentProject.Connection
    
    rs.CursorLocation = adUseClient
    rs.Open "tbl残業管理", cn, adOpenKeyset, adLockOptimistic


    rs.Sort = "日付 ASC, 担当者ID ASC, 残業区分 ASC"
    rs.MoveFirst
    
    
    Do Until rs.EOF
    
        If rs!残業区分 = 1 Then
        
            If DCount("休日", "tbl休日", "休日 = #" & rs!日付 & "#") > 0 Then
            
                rs!残業区分 = 3
                rs.Update
                
            End If

    
        ElseIf rs!残業区分 = 2 Then
        
            If DCount("休日", "tbl休日", "休日 = #" & rs!日付 & "#") > 0 Then
            
                rs!残業区分 = 4
                rs.Update
            
            End If

        End If
        
        rs.MoveNext
          
    Loop


    rs.Sort = ""

    rs.Close: Set rs = Nothing
    cn.Close: Set cn = Nothing
通報 ...