access在结合或绑定的组合框中添加新值
时 间:2009-09-10 08:16:26
作 者:UMVSoft整理 ID:1445 城市:上海
摘 要:access在结合或绑定的组合框中添加新值
正 文:
当组合框为结合(或绑定)时,上述一些属性必须如上所述。如果在组合框中输入新值,将会触发“不在列表中(NotInList)”事件。在该事件中写上适当的代码就能将新值添加到组合框所结合(或绑定)的表中。
在使用该事件时,Access提供了两个变量,NewData 和Response 。
当输入的值不在列表中时,Access把这一新值写入NewData变量中。通过访问NewData可将新值添加到主表中。
Response有三个值可取:acDataErrDisplay (默认值)、acDataErrContinue和acDataErrAdded 。
书写形式为:
Response = acDataErrDisplay
Response = acDataErrContinue
Response = acDataErrAdded
它们的含义为:
1、acDataErrDisplay为用户显示默认的消息。当不允许用户将新值添加到组合框的列表中时,可以使用它。
2、acDataErrContinue 不为用户显示默认的消息。如果要为用户显示自定义消息时,可以使用它。例如,事件过程能显示一个自定义对话框以询问用户是否要保存新的输入项。如果回答为 Yes,事件过程将新的输入项添加到列表中,并将 Response 参数设置为 acDataErrAdded。如果回答是 No,事件过程将 Response 参数设置为 acDataErrContinue。
3、acDataErrAdded 不为用户显示消息,但在 NotInList 事件过程中将输入项添加到组合框列表中。在输入项被添加后,Microsoft Access 将通过重新查询组合框来更新列表。然后 Microsoft Access 重新检查字符串和组合框列表,并将 NewData 参数中的值保存到组合框绑定到的字段中。如果字符串不在列表中,则 Microsoft Access 将显示一条错误消息。
①当主表只有一个字段可以添加新值时,不必另建主表输入窗体,用"Insert Into表名称(字段名) Values ('" & NewData & "');"语句将新值直接追加到主表中。以下参考代码:
Private Sub 控件名_NotInList(NewData As String, Response As Integer)
DoCmd.SetWarnings False
DoCmd.RunSQL "Insert Into 表名称(字段名) Values ('" & NewData & "');"
Response = acDataErrAdded
DoCmd.SetWarnings True
End Sub
②如果,主表有多个字段需要添加新值时,必须另建基于主表的输入窗体。在主表窗体的“加载”事件中写入:
Private Sub Form_Load()
If Len(Me.OpenArgs) Then Me.与“多”表窗体中相同字段的控件名 = Me.OpenArgs
End Sub
而在“多”表的“不在列表中”的事件中,写入以下参考代码:
Private Sub 控件名_NotInList(NewData As String, Response As Integer)
If MsgBox("是否要添加新值吗?", vbInformation + vbYesNo, "寻问") Then
DoCmd.OpenForm "主表窗体名称", , , , acFormAdd, acDialog, NewData
Response = acDataErrAdded
End If
End Sub
Access软件网官方交流QQ群 (群号:483923997) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- 【Access窗体导出PDF】...(04.08)
- 【Access窗体导出PDF】...(04.07)
- Access两种方式实现即时更...(03.01)
- Access隐藏与显示lacc...(01.12)
- 【Access高效办公】将每个...(12.23)
- Access21点游戏源代码(12.13)
- 【Access窗体导出Exce...(11.15)
- 【Access开发】Acces...(11.14)
- 通过Access宏录入数据到选...(11.10)
学习心得
最新文章
- ACCESS精华集锦资料.CHM(04.25)
- Access VBA语句If Me...(04.24)
- 【Access修改记录示例】编辑选...(04.22)
- 【Access表名称命名建议】将A...(04.20)
- Access学习笔记--用Acce...(04.19)
- 【Access重复项查询示例】将A...(04.17)
- Access快速开发平台企业版--...(04.16)
- 【Access模块示例】通过模块代...(04.15)
- Access查询里面分组合计功能添...(04.13)
- 【Access删除查询】删除数字最...(04.12)