当你在一个组合框中输入时,可能会遇到一个列表中没有的记录,如何在输入后能自动添加进去呢?
下面就讲讲这个不在列表中的事件命令应该怎么写:
1、实现这一效果,你首先应该把组合框的"行来源类型"定为:表/查询,另外在"限于列表"属性设为:是
2、在"不在列表中"事件上写代码如下:
如:组合框控件名为:类别
Private Sub 类别_NotInList(NewData As String, Response As Integer)
Dim ctl As Control,
Set ctl = Me.类别
If MsgBox("您所输入的类别并不在数据库中,确认添加 " & NewData & " 类别吗?", vbQuestion + vbOKCancel + vbDefaultButton2, "提示") = vbOK Then
Response = acDataErrAdded
Dim Rs As New ADODB.Recordset
Rs.Open "KindTable", CurrentProject.Connection, adOpenDynamic, adLockOptimistic
Rs.AddNew
Rs!类别名称 = NewData
Rs.Update
Rs.Close
Set Rs = Nothing
Me.类别.RowSource = "Select 类别名称 FROM KindTable ;"
Else
Response = acDataErrContinue
ctl.Undo
End If
End Sub