Office中国论坛/Access中国论坛

标题: Access交叉表查询引用窗体控件值错误的有没好的解决方法 [打印本页]

作者: wzy0703    时间: 2015-8-24 10:57
标题: Access交叉表查询引用窗体控件值错误的有没好的解决方法
做了一个【01下单及时性】的选择查询,条件是取窗体中的月份:[forms]![查询]![月份]再利用这个【01下单及时性】做交叉查询【交叉表取不到窗体的数值】,始终取不到窗体的月份的值。请问有没更好的办法。
本人是新手,请详细描述 处理方法,谢谢了。






作者: t小宝    时间: 2015-8-24 12:08
需要设置作为查询条件的参数的类型。
比如此例中条件参数是:[forms]![查询]![月份],打开查询设计视图,在功能区上单击参数(2003是工具-查询-参数),在弹出的窗口的参数列输入 [forms]![查询]![月份],数据类型列选择整形或长整形,确定即可。
作者: roych    时间: 2015-8-24 12:20
本帖最后由 roych 于 2015-8-24 12:22 编辑

无法引用窗体控件值,修改原有SQL语句即可。部分数据已删除,但应该可用:
按钮代码:
  1. Private Sub Command0_Click()
  2. '定义查询
  3. Dim qry As DAO.QueryDef
  4. '定义查询SQL代码
  5. Dim strSQL As String
  6. '设置查询
  7. Set qry = CurrentDb.QueryDefs("01下单及时性")
  8. '根据所选月份,将SQL代码修改为静态值。
  9. strSQL = Replace(qry.SQL, "[forms]![查询]![月份]", Me.月份)
  10. '修改查询数据源代码。
  11. qry.SQL = strSQL
  12. '为原交叉表,嵌入为子窗体。这一句用于刷新子窗体数据。
  13. Me.交叉表取不到窗体的数值.Requery
  14. End Sub
复制代码
[attach]57119[/attach][attach]57118[/attach]

作者: wzy0703    时间: 2015-8-24 12:46
t小宝 发表于 2015-8-24 12:08
需要设置作为查询条件的参数的类型。
比如此例中条件参数是:[forms]![查询]![月份],打开查询设计视图, ...

谢谢,按照你的做法 ,真的可以了~




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