我有一个表单,它将显示表的最后一条记录,以及其他表中的一些附加字段。主表的PK是自动编号。我需要能够允许用户更改自动编号字段,然后确定记录是否存在,如果是 - 更新,如果不是 - 插入新的。我尝试在字段更改时向字段添加事件,但每当我尝试单击表单上的字段时,它只会发出哔哔声。这是代码:
Private Sub JobID_Change()
'Check Bid#, if already exists open selected record for editing
rstOpenOrder.FindFirst "JobID = " & Me![JobID]
Do Until rstOpenOrder.NoMatch
With rstOpenOrder
'Add new record to end of Recordset object.
.Edit
'Edit data.
!LocationID = Me![LocationID]
!Description = Me![JobName]
!BaseBid = Me![BaseBid]
!GrossMargin = Me![GrossMargin]
!MDs = Me![ManDays]
!BidDate = Me![BidDate]
!ShortDate = Me![ShortDate]
!EmployeeID = Me![EmployeeID]
!GC = Me![GCs]
.Update
.FindNext "JobID = " & Me![JobID]
'Save changes.
End With
Loop
End Sub
如果有人可以提供帮助,我将非常感激!
答案 0 :(得分:2)
在用户界面中公开自动编号字段通常不是一个好主意。但是,如果您仍想提供您所描述的界面,则需要执行以下操作:
IDLookup
)Me.Recordset.AddNew
)此处的关键是您的查询必须通过未绑定文本框完成。访问将不允许您编辑绑定到自动编号字段的文本框内的任何内容(理由充分!)。