Office中国论坛/Access中国论坛

标题: [求助]两个问题!急!!! [打印本页]

作者: bearxyz    时间: 2002-10-30 16:32
标题: [求助]两个问题!急!!!
现在我正在做一个Access项目,我知道如何只显示某个表前几位数据,但是不知道如何显示除这几位数据以外的其它数据;还有,在报表中,我想让某个表的一列数据横向显示。
望高手赐教!谢谢!!!
作者: yahai    时间: 2002-10-30 16:33
第二个问题我也想知道
作者: bearxyz    时间: 2002-10-30 17:43
是不是这两个问题没办法解决?
作者: 九阳先生    时间: 2002-10-30 18:57
第一个问题,做如下查询即可:
SELECT * FROM YourTable WHERE KeyField Not in (
SELECT TOP n KeyField
FROM YourTable;
)
第二个问题,如果要动态生成此报表,只能在Report_OnOpen事件中编程实现。
作者: bearxyz    时间: 2002-10-30 19:27
非常感谢!!!
那第二个问题具体应该怎么做呢?
作者: 九阳先生    时间: 2002-10-30 21:57
第二个问题比较复杂,我也没做过,大概步骤如下:
1. 对你要输出的数据表作一个交叉查询
2. 在一个Form上添加一个命令按钮或新建一个子程序/函数用于产生此报表
3. 在按钮的OnClick事件或子程序/函数中:
    Dim rpt As Report
    Dim ctlLabel As Control, ctlText As Control

    ' 创建新的报表,该报表将 City 表作为其数据源。
    Set rpt = CreateReport
    rpt.RecordSource = "city"
   
    Set ctlLabel = CreateReportControl(rpt.Name, acLabel, acPageHeader, , "City", 200, 300)
    ' 在主体节中创建未绑定默认尺寸的文本框。
    ctlLabel.Caption = "City"
    Set ctlText = CreateReportControl(rpt.Name, acTextBox, acDetail, "", "City", _
        200, 500)
    ' 为文本框创建子标签。
    DoCmd.OpenReport rpt.Name, acViewPreview
   
这是一个例子,每个控件的位置需要自己计算。每个控件的绑定字段也即交叉表的字段名称可通过Recordset的字段对象得到。自己看一下帮助,费点时间可以搞定
作者: bearxyz    时间: 2002-10-31 19:32
我发现使用print方法也可以解决第二个问题,我已经解决这个问题了,太感谢了!谢谢!!!
作者: goodidea    时间: 2002-10-31 20:39
第二个问题用子报表也可以解决。
作者: bearxyz    时间: 2002-10-31 22:11
用子报表不好解决,因为我要数据横向列出。




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