無法找到所指定的列做更新(編號:8162)

執行階段錯誤 -2147217864 (80040e38)
無法找到所指定的列做更新:最後讀取的數值已被變更.
當我新增一筆後立即做修改時即出現此錯誤.why??
Private Sub cmd_sure_Click()
If flgnew = True Then rsp_type.AddNew
With rsp_type
!part_no = txtpartno
  !Description = Trim(RTrim(txtdesp))
  !specification = Trim(RTrim(txtspec))
  !unit = txtunit
  !supplier_partno = txtsupplier
  !remark = txtremark
  .Update
End With
If flgnew = True Then BM = rsp_type.Bookmark
End Sub
Private Sub Form_Unload(Cancel As Integer)
rsp_type.Sort = "part_no"
rsp_type.Bookmark = BM
frm_itemnew.DataGrid1.SetFocus
flgedit = False
flgnew = False