Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

窗体查询初学,请您帮助

我要学ACCESS  发表于:2009-12-05 23:13:08  
复制

求助一:查询后子窗体按金额降序排列的代码;

求助二:多个条件选项其中有空值时,查询满足已赋值条件的记录

点击下载此附件

 

Top
access爱好者 发表于:2009-12-06 08:53:32
2007的,打不了

李李李 发表于:2009-12-06 09:24:26
改为2003格式了,请您帮忙点击下载此附件

access爱好者 发表于:2009-12-06 10:15:54
李李李 发表于:2009-12-06 10:44:27

非常感谢。

还有一个问题:我参照刘小军窗体查询实例这样做过。在mdb下是没有问题的,但是转成adp文件后,出现主窗体“计数”与”合计”不随查询结果而变化的问题,一直停留在全部记录的汇总计数与合计的状态,您知道是哪里的原因吗?



access爱好者 发表于:2009-12-06 10:53:17
 不用表达式,用代码看看......

李李李 发表于:2009-12-06 14:06:25

还得麻烦您,如何用代码为“计数”和“合计”两个控件赋值呢?



access爱好者 发表于:2009-12-06 15:36:25

Private Sub Com查询_Click()
    On Error GoTo Err_cmd查询_Click

    Dim stw As String
    stw = ""
    If Not IsNull(Me.HY) Then stw = stw & "([HYML_DM] like '" & Me.HY & "') and "
    If Not IsNull(Me.ZSXM) Then stw = stw & "([ZSXM_DM] like '" & Me.ZSXM & "') and "
    If Len(stw) > 1 Then stw = Left(stw, Len(stw) - 5)
    Me.frm查询子窗体.Form.Filter = stw
    Me.frm查询子窗体.Form.FilterOn = True

    If Me.frm查询子窗体.Form.Recordset.RecordCount > 0 Then
        '子窗体的记录数>0
        Me.Text10.ControlSource = "=[frm查询子窗体].[Form].[计数]"
        Me.Text12.ControlSource = "=[frm查询子窗体].[Form].[合计]"
    Else
        '子窗体的记录数=0
        Me.Text10.ControlSource = "=0"
        Me.Text12.ControlSource = "=0.00"
    End If

Exit_cmd查询_Click:
    Exit Sub

Err_cmd查询_Click:
    MsgBox Err.Description
    Resume Exit_cmd查询_Click

End Sub



李李李 发表于:2009-12-06 16:29:58

非常感谢您的热心帮助,使我节省了大量的时间的精力,也学到了有用的东西,谢谢。



李李李 发表于:2009-12-06 16:49:49

试后发现问题不在主窗体,还是子窗体本身的问题。

在ADP文件里,数据筛选后,子窗体合计本身就没变。所以主窗体的数据合计来源本身就是错误的。

为什么ADP下窗体数据合计不随筛选而改变呢?

MDB下是没问题的。但是数据量很大,必须用SQL。



李李李 发表于:2009-12-06 17:20:23

最后还是通过在代码中添加

Dim srtSQL as string

strSQL ="select * from tbl表 WHERE " & strWhere

me.查询子窗体.form.RecordSource = strSQL

问题解决了,但是您能给解释原因吗?



总记录:10篇  页次:1/1 9 1 :