我建了一个名为部门的表和窗体,通过部门窗体录入部门数据,为了让部门不重复录入,写了一些代码在录入数据时进行检测(我不想设成主键),但是在实际运行过程中,如果我的部门表里面没有记录的话在增加记录时就会出现一个如图的错误。
但如果先从表里面直接录入一条记录后,再从窗体添加记录就没有问题呢!请教各位高手,帮我看看吧!!先谢谢了!!!
代码如下:
Dim str As String
Dim i As Integer
Dim Rs As New ADODB.Recordset
If IsNull(Me![部门]) Then
MsgBox ("请输入部门!")
Me![部门].SetFocus
Else
Set Rs = New ADODB.Recordset
str = "select * from 部门"
Rs.Open str, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
Rs.MoveFirst
For i = 1 To Rs.RecordCount
If Me![部门] = Rs("部门") Then
MsgBox ("部门已经存在!")
Exit Sub
Else
Rs.MoveNext
End If
Next i
With Rs '添加记录
.AddNew
!部门ID = Trim(Me![部门ID])
!部门 = Trim(Me![部门])
.Update
End With
Rs.Close
MsgBox ("添加成功!")
Me![部门 子窗体].Requery
Set Rs = Nothing
With Me
.[部门ID] = Null
.[部门] = Null
End With
End If
Me![部门].SetFocus
[此贴子已经被作者于2005-5-16 9:09:22编辑过]
|