我正在尝试根据“JOB”列中分配的作业类型将名称循环到“TASK”列。例如,我的表如下所示:
我的代码如下:
Sub macro2()
Dim Rst As DAO.Recordset
Set Rst = CurrentDb.OpenRecordset("table1")
Dim employee(2) As String
employee(0) = "empname1"
employee(1) = "empname2"
Dim i As Integer
With Rst
i = 0
Rst.MoveFirst
Do While Not .EOF
If Rst.Fields("JOB") = "LETTER" Then
Rst.Edit
Rst.Fields("Task").value = employee(i)
Rst.Update
End If
.MoveNext
i = i + 1
If i > 2 Then i = 0
Loop
End With
DoCmd.Requery
End Sub
问题是,有时它“错过”了一项任务,我不知道为什么。
它应该一直将这两个名称循环到列中,但它不会。但是,有时在运行它几次后它会这样做。新鲜打开数据库时,它不会,并且在完成后会如上所示。有任何想法吗?