Office中国论坛/Access中国论坛

标题: 求助一种查询 [打印本页]

作者: jp777    时间: 2009-1-8 22:42
标题: 求助一种查询
我做了一张统计报表,但在安年份查询并统计结果时出现了问题。请问哪位高手能够解答。万分感谢。
[attach]34393[/attach]
作者: Henry D. Sy    时间: 2009-1-8 23:01
从而使上表的统计结果发生改变
什么意思
作者: jp777    时间: 2009-1-8 23:14
一开始,统计表里面显示的结果包括了2005至2008年所有的结果(即统计左面那个表里面的记录),现在希望能将各年的结果单独显示出来。这样上表就类似一个模板了。可以同时显示4年的结果,也可以单独显示一年的。
作者: Henry D. Sy    时间: 2009-1-8 23:22
如果只是对下面的子窗体进行筛选的话
1. 随便做个查询,名称为 Q
2.
Private Sub Combo2_AfterUpdate()
    Dim Qdf As DAO.QueryDef
    Dim strCriteria As String
    Dim str As String
    If Not IsNull(Me.Combo2) Then
        str = Me.Combo2
        strCriteria = "InStr([Identification Code],'" & str & "') > 0"
        Set Qdf = CurrentDb.QueryDefs("Q")
        Qdf.SQL = "SELECT manufactory.* FROM manufactory where " & strCriteria
        Me.Child4.SourceObject = "查询.Q"
        Qdf.Close
        Set Qdf = Nothing
    End If
End Sub
作者: Henry D. Sy    时间: 2009-1-8 23:29
这样也可以
Private Sub Combo2_AfterUpdate()
    Dim strCriteria As String
    Dim str As String
    If Not IsNull(Me.Combo2) Then
        str = Me.Combo2
        strCriteria = "InStr([Identification Code],'" & str & "') > 0"
        Me.Child4.Form.Filter = strCriteria
        Me.Child4.Form.FilterOn = True
    End If
End Sub
作者: jp777    时间: 2009-1-8 23:31
我试了一下,的确下面的表按选择的年份显示出了结果,可是为什么上面的表的结果没有做相应的变化呢。难道是我的思路错了吗?[attach]34394[/attach]

[ 本帖最后由 jp777 于 2009-1-8 23:35 编辑 ]
作者: Henry D. Sy    时间: 2009-1-8 23:33
原帖由 jp777 于 2009-1-8 23:31 发表
能给我个文件吗?我没明白随便建个查询的意思。谢谢

SELECT manufactory.* FROM manufactory
将这个查询保存为Q
作者: jp777    时间: 2009-1-8 23:36
最关键的表的结果没有任何的变化。看来我什么地方错了。
作者: jp777    时间: 2009-1-9 09:48
我尝试了一下,发现是查询更新后,窗体无法自动根据新的查询显示结果。请问如何自动刷新窗体的结果呢?谢谢。
作者: Henry D. Sy    时间: 2009-1-9 09:51
Me.Child4.Form.Filter = strCriteria
        Me.Child4.Form.FilterOn = True
作者: jp777    时间: 2009-1-9 11:25
不好意思,我按着试了一下,没有任何的反应。请帮我写个文件的例子吗?谢谢。
作者: jp777    时间: 2009-1-9 11:59
按您说的试验了一下,没有任何的反应,版主能给个结果文件吗?谢谢。




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