Office中国论坛/Access中国论坛

标题: 哪位朋友能帮我实现:这样的查询? [打印本页]

作者: hongjian    时间: 2002-10-18 22:42
标题: 哪位朋友能帮我实现:这样的查询?
哪位朋友能帮我实现:这样的查询?
数据如下:
1)单位  --姓名
 新兴     陈一
 新兴     陈二
 云浮     李五
 云浮     李六

2)当单击组合框:单位 时,如果选择:新兴 ,那么在:姓名 栏里只显示属于“新兴”的姓名,如果单击组合框选择“云浮”时,姓名框里只显示属于“云浮”的姓名!

多谢朋友的帮助!hongjian文件下载
作者: zhouxh    时间: 2002-10-18 23:15
表“本局人员”的字段“单位”的数据类型不对,应改为“长整数”

使姓名框的行来源=“SELECT 本局人员.姓名 FROM 来文单位 INNER JOIN 本局人员 ON 来文单位.主办单位 = 本局人员.单位 WHERE (((来文单位.主办单位)=[Forms]![本局人员]![单位]));”
然后 在姓名框获得焦点时 REQUERY
即可
作者: hongjian    时间: 2002-10-19 00:54
十分多谢!ᕇᕇ但当效果不很好,有时不能关联! 需按菜单-记录-刷新 项才能实现。
如果使用了 Requery 数据经常走动,不容易找!如果使用VBA如何写?多谢!

[此贴子已经被作者于2002-10-18 16:53:43编辑过]


作者: zhouxh    时间: 2002-10-19 01:21
me![姓名].requery
作者: hongjian    时间: 2002-10-19 01:30
十分多谢!zhouxh !
作者: aban    时间: 2002-10-19 13:42
行来源不必如此复杂,只需:
“SELECT 本局人员.姓名 FROM 来文单位 WHERE (((主办单位)=[Forms]![本局人员]![单位]));”
即可
作者: aban    时间: 2002-10-19 13:43
行来源不必如此复杂,只需:
“SELECT 本局人员.姓名 FROM 来文单位 WHERE (((主办单位)=[Forms]![本局人员]![单位]));”
即可。
这样做可以减少查询时间!
作者: hongjian    时间: 2002-10-20 02:34
用VBA 如何实现呢?
作者: AlexLiu    时间: 2002-10-20 06:04
看看这个:
http://www.accxp.com/club/topic.cgi?forum=2&topic=3353
作者: aban    时间: 2002-10-20 06:10
1.把姓名的行来源定义为:"SELECT 本局人员.姓名 FROM 来文单位 WHERE (((主办单位)=[Forms]![本局人员]![单位]));" .
然后在单位的更新前事件里加入:

Private Sub 单位_BeforeUpdate(Cancel As Integer)
姓名.SetFocus
End Sub

此方法最简单,效率最高.





欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3