este es el codigo, en la linea nº-10, "tb2.update(3)", el campo en acces es autonumerico.
Private Sub Command1_Click()
List1.ListIndex = 0
While List1.ListIndex <= List1.ListCount
List2.ListIndex = List1.ListIndex
List3.ListIndex = List1.ListIndex
List4.ListIndex = List1.ListIndex
tb2.Update (0), List1.Text
tb2.Update (1), Text2.Text
tb2.Update (2), List3.Text
tb2.Update (3), Val(Text5.Text)
tb2.Update (4), List4.Text
tb2.Update (5), Combo1.Text
Set consulta = bd1.Execute("select * from productos where idproducto='" & CStr(Trim(List1.Text)) & "'")
consulta.Update (1), Val(List4.Text)
consulta.Update (3), consulta.Fields(3) + Val(List3.Text)
List1.ListIndex = List1.ListIndex + 1
tb2.AddNew
Wend
tb2.CancelUpdate
End Sub