设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1148|回复: 9
打印 上一主题 下一主题

[查询] 求助 如何将一组相关查询纪录显示在窗体上

[复制链接]
跳转到指定楼层
1#
发表于 2007-3-21 19:15:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如何将一组相关查询纪录显示在窗体上
GroupNumber为查询条件


If IsNull(Me!GroupNumber) Then
        ' no lGroupNumber, so no rated values. This should not happen
        Exit Sub
    Else
        ThisGroupNumber = Me!GroupNumber
    End If
   
    ' Return reference to current database:
    Set dbs = CurrentDb
    strsql = " SELECT tblphotometery.GroupNumber, tblphotometery.LampNumber, tblphotometery.SupplyVoltage, tblphotometery.LampVoltage, tblphotometery.LampCurrent, tblphotometery.LampWattage, tblphotometery.LuminousFlux " _
            & " From tblphotometery" _
            & " WHERE (tblphotometery.GroupNumber=" & ThisGroupNumber & ")" _
            & " ORDER BY tblphotometery.GroupNumber, tblphotometery.LampNumber;"
   
   
    Set rst = dbs.OpenRecordset(strsql, dbOpenSnapshot)                                 ’总是报错说 Too few arameters.Expected 1.
    If rst.BOF And rst.EOF Then                                                                           'sql语句没有问题,可以查到想要得结果,为何在窗体中就显示不出来呢?
        ' no records with rated data found. Exit sub without doing anything.
        Exit Sub
    Else
        rst.MoveLast    ' if there are more than 1 records with rated data for a lamp code
                        
        Set frmChild = Forms!frmMeasuredValue_sub              ' then we use the last one.
        With frmChild
     
            ![txt_Voltage] = rst!Voltage
            ![txt_p] = rst!Wattage
            '![txt_I] = rst!I
            !txt_Lumen = rst!Luminous_flux
            
           '![txty_R] = rst!LampVoltage
            '![txt_Lmw] = rst!Lmw
           ' ![txtPhi_R] = rst!phi
         
        End With
       End If
     rst.Close
    Set dbs = Nothing
End Sub

sql语句没有问题,可以查到想要得结果,为何在窗体中就显示不出来呢?
不胜感激
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2007-3-21 20:06:00 | 只看该作者
想用dao来将查询结果显示在窗体上(具体是窗体上的子窗体),显示效果如图。
3#
 楼主| 发表于 2007-3-21 21:26:00 | 只看该作者
还是贴不了图,不会啊,郁闷

[此贴子已经被作者于2007-3-21 13:42:05编辑过]

4#
 楼主| 发表于 2007-3-21 23:07:00 | 只看该作者
自己顶阿,没人帮忙啊
自己实在没辙啦
5#
发表于 2007-3-21 23:45:00 | 只看该作者
用:SELECT GroupNumber,LampNumber,SupplyVoltage,LampVoltage,LampCurrent, LampWattage, LuminousFlux  From tblphotometery ORDER BY GroupNumber,LampNumber;作为显示窗体的数据来源。

查询命令按钮上的代码为:

DoCmd.OpenForm "显示窗体的名字", , ,"[GroupNumber]=" & Me!GroupNumber

这样就行了。
6#
 楼主| 发表于 2007-3-22 17:00:00 | 只看该作者

[求助]关于OpenForm 关于的问题

非常感谢您能回答我的问题,但是还有一个疑问,下面语句执行完要出个对话框,让我输入条件,可是条件已经在对话框上,只是不再文本框内,必须输入再输入才可以得到想要得 我不想显示这个对话框,且条件在点击按钮前在边上的文本框已经输入,如何做到
DoCmd.OpenForm "frmMeasuredValue_sub", acFormDS, , Me.Group_No

Me.Group_No是传递的条件
7#
 楼主| 发表于 2007-3-22 17:03:00 | 只看该作者
8#
发表于 2007-3-22 17:13:00 | 只看该作者
1,不用DAO的方法

在查询里面设好条件..Like IIF([Forms]![你的主窗体]![查询条件的文本框或其它控件] is null,"*",'*'&([Forms]![你的主窗体]![查询条件的文本框或其它控件] &'*')

再在窗体中用某一相应事件触发 Me.子窗体名.Requery

这个坛论上有个"刘小军"的窗体查询实例,里面有关于你这种查询的实例,你查查看
9#
 楼主| 发表于 2007-3-22 21:19:00 | 只看该作者
找不到这个人发的帖子阿,搜索作者刘小军??
好像不好用啊,
10#
发表于 2007-3-22 21:35:00 | 只看该作者
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-26 02:45 , Processed in 0.085711 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表