设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[查询] 求助!!!如何用form.filter实现多字段查询?

[复制链接]
跳转到指定楼层
1#
发表于 2007-4-19 01:38:00 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
能否用   子窗体.form.filter=   在子窗体的表中同时实现符合不同字段a和b的查询?

还是用其他方法?小弟初学,谢谢!!!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
4#
发表于 2007-4-19 20:04:00 | 只看该作者
给你一段代码自己研究一下:



Dim a
Dim varItm
a = ""
    For Each varItm In Me![ChooseName].ItemsSelected '以循环取得复选值
       a = a & " or 产品名称 Like" & Chr(39) & _
               Me![ChooseName].ItemData(varItm) & Chr(39)  ''''''''''''''
    Next varItm
    If a <> "" Then '去除最左边的四个字符
        a = "(" & Right(a, Len(a) - 4) & ") And "
    End If

    If IsNull(Me![StartDate]) = True And IsNull(Me![EndDate]) = False Then
        a = a & "日期 <=#" & Me![EndDate] & "# "
    ElseIf IsNull(Me![StartDate]) = False And IsNull(Me![EndDate]) = True Then
        a = a & "日期 >=#" & Me![StartDate] & "#"
    ElseIf IsNull(Me![StartDate]) = False And IsNull(Me![EndDate]) = False Then
        a = a & "(日期 between #" & Me![StartDate] & _
              "# and #" & Me![EndDate] & "#)"
    ElseIf IsNull(Me![StartDate]) = True And IsNull(Me![EndDate]) = True Then
        a = Left(a, Len(a) - 5)
    End If
     If ActMod <> "" Then

Me![SleData].Form.Filter = a And "&' 属性 = Me![ActMod]'"
    Me![SleData].Form.FilterOn = True '执行筛选
    Me![SleOk].Caption = "取消检索"
    Me![SleOk].ForeColor = RGB(255, 0, 0)
End If
Me![SleData].Form.Filter = a  '设定筛选条件
    Me![SleData].Form.FilterOn = True '执行筛选
    Me![SleOk].Caption = "取消检索"
    Me![SleOk].ForeColor = RGB(255, 0, 0)
   
3#
 楼主| 发表于 2007-4-19 02:26:00 | 只看该作者

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
2#
发表于 2007-4-19 02:18:00 | 只看该作者
看不明,请提供示例
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-17 03:35 , Processed in 0.088128 second(s), 29 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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