有一些下拉选项的表单字段(在MS Access中)。如果想要的值不在查找表中,用户应该能够通过键入它来添加它。
假设查找表具有行:A,B,C,D。用户想要“E “这还不存在。理想情况下,他们会“覆盖”并输入“E”,然后将其添加到查找表中以备将来输入。
我的谷歌搜索失败了。我应该使用这个术语吗?有什么好方法? (到目前为止,我一直在玩组合框和向导)。
谢谢你的任何建议!
有一些下拉选项的表单字段(在MS Access中)。如果想要的值不在查找表中,用户应该能够通过键入它来添加它。
假设查找表具有行:A,B,C,D。用户想要“E “这还不存在。理想情况下,他们会“覆盖”并输入“E”,然后将其添加到查找表中以备将来输入。
我的谷歌搜索失败了。我应该使用这个术语吗?有什么好方法? (到目前为止,我一直在玩组合框和向导)。
谢谢你的任何建议!
啊哈,解决了我自己在这里:
http://allenbrowne.com/ser-27-01.html
Access 2007年
要使用访问 2007新特性:
- 打开表单设计视图。
- 右键单击组合框,然后选择“属性”。
- 在属性对话框的数据选项卡,设置允许值列表编辑 为是,和列表项编辑 表单将表单的名称使用 添加项目到列表中。
当你使用这种形式,可以 现在右键单击组合,并选择 编辑列表项。
还有一些老版本的Access的建议。
你可以试试下面的代码:
Private Sub Combo33_NotInList(NewData As String, Response As Integer)
Dim strSql As String
If MsgBox(NewData & " not in list, add?", _
vbYesNo + vbQuestion) = vbYes Then
strSql = "insert into tblStudents (name) values(" & NewData & ")"
CurrentDb.Execute strSql
Response = acDataErrAdded
End If
End Sub
注意我用学生的表名和SNAME的字段名。所以,只需 更改表名称,并将该字段更改为您使用的任何内容。
您也可以使用与插入它们相同的表作为查找表。因此,任何新的东西都会自动添加到有效选项列表中。 – BIBD 2009-06-19 19:01:39