设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[查询] 如何用模块控制查询中的日期区间?

[复制链接]
跳转到指定楼层
1#
发表于 2008-6-5 13:32:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
查询A中包含一个日期区间,窗体a中有“起始日期”和“截止日期”两个文本框,如果只在一个窗体引用没问题,between [窗体a]![起始日期] and [窗体a]![截止日期];现有另一个窗体b也有“起始日期”和“截止日期”,能否在模块中定义一个函数判断窗体a或窗体b是否打开,并使查询a中日期引用当前打开的窗体中的起止日期?请多指教!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2008-6-5 15:25:44 | 只看该作者
Dim MyFrm
    For Each MyFrm In CurrentProject.AllForms
        If MyFrm.IsLoaded = True And MyFrm.Name = "frm_DataQuery" Then
                      '正在执行
        End If
    Next
3#
发表于 2008-6-5 15:49:43 | 只看该作者
那如果两个窗体都打开了呢?
4#
发表于 2008-6-5 16:40:52 | 只看该作者
原帖由 静儿 于 2008-6-5 15:49 发表
那如果两个窗体都打开了呢?


说得好!这种情况就不必太智能了,另做一个查询不就得了。
5#
 楼主| 发表于 2008-6-5 17:31:15 | 只看该作者
谢谢2楼朋友!判断窗体是否打开我学会了,我的意思是在模块中设计一个变量比如zxrq(),然后判断窗体a或窗体b是否打开,如果窗体a打开,则zxrq的变量赋值为between [窗体a]![起始日期] and [窗体a]![截止日期],如果窗体b打开,则zxrq赋值为between [窗体b]![起始日期] and [窗体b]![截止日期]。
我试了:
Function zxrq() As Date
If IsLoaded("cttj统计执行") <> 0 Then
    zxrq between([cttj统计执行]![起始日期]) And ([cttj统计执行]![截止日期])
ElseIf IsLoaded("ctzx执行主窗体") <> 0 Then
zxrq between([ctzx执行主窗体]![起始日期]) And ([ctzx执行主窗体]![截止日期])
End If
End Function

在查询引用时出错。我学了没多久,也都是在这里偷的拳头,呵呵!请朋友们帮忙!
6#
发表于 2008-6-5 17:57:04 | 只看该作者
模块中引用窗体值 forms("窗体名称").控件名称
7#
发表于 2008-6-5 18:16:32 | 只看该作者
Function zxrq() As Date
有这样写的吗?
8#
 楼主| 发表于 2008-6-5 19:25:45 | 只看该作者
谢谢grant,我试一下。
9#
发表于 2010-6-13 18:00:03 | 只看该作者
学习学习
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-12 14:36 , Processed in 0.090136 second(s), 32 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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