Office中国论坛/Access中国论坛

标题: 请教一下 如何传递参数给一个查询? [打印本页]

作者: raymond    时间: 2007-2-11 01:11
标题: 请教一下 如何传递参数给一个查询?
我在Acess的一个查询中使用了一个变量 比如 weeknum,查询中用这个变量来筛选数据

这样在打开这个查询的时候会弹出一个窗口要你填入这个变量的值,这样没什么问题。

我的问题是,如果我想包装一层,通过在比如窗体中某个地方输入日期,然后自动算出weeknum

再将这个值自动传给并打开这个查询,应该怎么做?

就是说打开查询的时候怎么自动传递参数呢?
作者: cgsilicone    时间: 2007-2-11 01:38
自定义函数如:getweeknum(),然后在查询中用getweeknum()代替参数weeknum。在窗体中输输入日期后赋值给getweeknum,再打开这个查询,就得到你要的结果。
作者: 07688971217    时间: 2007-2-11 01:43
在查询设计视图的条件中写:[FORMS]![窗体名]!文本框名]

这样简单点
作者: raymond    时间: 2007-2-11 01:51
谢谢 不过,如果我不想修改查询本身的内容,只是想自动传递参数,能实现么?
作者: raymond    时间: 2007-2-11 01:53
以下是引用cgsilicone在2007-2-10 17:38:00的发言:


自定义函数如:getweeknum(),然后在查询中用getweeknum()代替参数weeknum。在窗体中输输入日期后赋值给getweeknum,再打开这个查询,就得到你要的结果。
getweeknum() ? 不是定义为函数么? 怎么赋值给他呢? 谢谢
作者: cgsilicone    时间: 2007-2-11 02:10
以下是引用raymond在2007-2-10 17:51:00的发言:
谢谢 不过,如果我不想修改查询本身的内容,只是想自动传递参数,能实现么?

   使用参数weeknum为函数名,就不用修改查询本身的内容。(不对,还得修改,至少还要加上括弧)。

  模块中定义如下:

   Public ddate as date

   Public Function weeknum()
         weeknum= ddate
   End Function
然后再在窗体中给ddate 赋值,就等于给weeknum赋值。
作者: raymond    时间: 2007-2-11 02:53
只要是public的变量 在查询里面都能用么?



那么我把weeknum定义为public的变量

然后在button click之后给他赋值,并打开查询可以么?

为什么我试了好像不管用
作者: cgsilicone    时间: 2007-2-11 03:04
以下是引用raymond在2007-2-10 18:53:00的发言:


只要是public的变量 在查询里面都能用么?

那么我把weeknum定义为public的变量

然后在button click之后给他赋值,并打开查询可以么?

为什么我试了好像不管用

请仔细看看我前面给出的例子。代码中的变量在查询里是用不上的,代码中的函数可以用。所以先在button click之后给public的变量赋值,再将public变量的值再赋给函数,然后打开查询调用函数,得到想要的结果。
作者: raymond    时间: 2007-2-13 00:22
谢谢,我明白你的意思,我只是在想,为什么函数可以用,变量却不能用。




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