Office中国论坛/Access中国论坛
标题: 用选项组打开窗体时无法显示记录?(新问题) [打印本页]
作者: bonbonkiss 时间: 2005-12-26 20:30
标题: 用选项组打开窗体时无法显示记录?(新问题)
在“窗体1”中的查询,要输入姓名或者编号,然后选择查询哪张表,结果总是出现第一个人的记录。一点通老师,您给我的代码分开都是可以执行的,但我拼在一起就不行了
Private Sub 命令25_Click()
On Error GoTo Err_命令25_Click
Dim stDocName As String
Dim stLinkCriteria As String
If IsNull(DLookup("[memberno]", "member", "[memberno]=" & "'" & 文本22 & "'")) Then '试查找有没有这个编号
If IsNull(DLookup("[memberno]", "member", "[membername]=" & "'" & 文本22 & "'")) Then '再查找有没有这个姓名
MsgBox "编号及姓名都不存在", , "提示"
Else '如果有,更改姓名为编号
Me.文本22 = DLookup("[memberno]", "member", "[membername]=" & "'" & 文本22 & "'")
stLinkCriteria = "[memberno]=" & "'" & Me![文本22] & "'"
If Me.框架23 = 1 Then
stDocName = "member1"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Else
If Me.框架23 = 2 Then
stDocName = "member2"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Else
stDocName = "member3"
DoCmd.OpenForm stDocName, , , stLinkCriteria
End If
End If
End If
Else
If Me.框架23 = 1 Then
stDocName = "member1"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Else
If Me.框架23 = 2 Then
stDocName = "member2"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Else
stDocName = "member3"
DoCmd.OpenForm stDocName, , , stLinkCriteria
End If
End If
End If
Exit_命令25_Click:
Exit Sub
Err_命令25_Click:
MsgBox Err.Description
Resume Exit_命令25_Click
End Sub
[attach]14949[/attach]
[此贴子已经被作者于2005-12-26 18:11:53编辑过]
作者: 静儿 时间: 2005-12-26 21:42
窗体member1--3的数据源中要有筛选条件啊。
If Me.框架23 = 1 Then
stDocName = "member1"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Else
If Me.框架23 = 2 Then
stDocName = "member2"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Else
stDocName = "member3"
DoCmd.OpenForm stDocName, , , stLinkCriteria
End If
End If
可以更改为:
If Me.框架23 = 1 Then stDocName = "member1"
If Me.框架23 = 2 Then stDocName = "member2"
If Me.框架23 = 3 then stDocName = "member3"
DoCmd.OpenForm stDocName, , , stLinkCriteria
作者: bonbonkiss 时间: 2005-12-26 22:10
还是不行啊?我的查询无论用编号或用姓名打进去都只出现第一个记录
作者: 一点通 时间: 2005-12-26 22:27
[attach]14950[/attach]
作者: bonbonkiss 时间: 2005-12-26 23:07
谢谢!你辛苦了
作者: bonbonkiss 时间: 2005-12-27 01:48
一点通老师,查询成功了但是同一窗体左边的选项组就发生了奇怪的问题,打开了窗体之后,所有的记录都没显示?
本来应该是直接显示第一条记录的呀,是否有冲突啊?请赐教
[此贴子已经被作者于2005-12-26 18:31:43编辑过]
作者: bonbonkiss 时间: 2005-12-27 02:31
就是同一个文件,在上面!一点通老师在不在啊
作者: wu8313 时间: 2005-12-27 04:29
选项组控件有返回值,我建议使用select...case...语句来执行条件转向,决定谁被选中就执行什么代码比较好一些,代码会显得简洁和清爽一些。
如果使用if...then...来执行判断,代码要繁杂一些。换言之,这样很容易丢失end if 和else 而出现语法错误而不便调试。
欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) |
Powered by Discuz! X3.3 |