Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

回复 加入收藏帖  复制
我要提问 帖子上移

如果根据复选框来查询数据

王萌萌 等级: 普通会员 积分:14 金币:0 来自:上海Access交流中心 发表于:2016-10-13 11:58:52   已结帖
楼主

 

我想根据上面的开票状态(已开票,未开票,全部)来筛选下面的复选框,不知道这个复选框选中和未选中的表示是YES 还是NO还是-1或者0。

 

代码如下:

Private Sub 查询_Click()
    Dim strWhere As String

 

    If Not IsNull(Me.开始日期) Then strWhere = strWhere & " AND 送货日期>=#" & Format(Me.开始日期, "yyyy-mm-1") & "#"

    If Not IsNull(Me.结束日期) Then strWhere = strWhere & " AND 送货日期<=#" & DateAdd("m", 1, Format(Me.结束日期, "yyyy-mm-1")) - 1 & "#"
    '这里为了判断简便,最前面必定会有一个“ AND ”,这是不需要的,这里去掉它

    If IsNull(Me.开始日期.Value) = False Then
        strWhere = strWhere & " and 送货日期>=#" & Me.开始日期.Value & "#"
    End If
    If IsNull(Me.结束日期.Value) = False Then
        strWhere = strWhere & " and 送货日期<=#" & Me.结束日期.Value & "#"
    End If

    Select Case Me.开票状态.Value
    Case "全部"
    FilterStr = ""

     Case "已开票"
     FilterStr = "开票状态=-1 "

     Case "未开票"
        FilterStr = "开票状态=0"

    End Select
   
    Select Case Me.出货类别.Value
    Case "全部"
    FilterStr = ""

     Case "发货"
     FilterStr = "出货类别='发货' "

     Case "换货"
        FilterStr = "出货类别='换货'"
    
     Case "样品"
        FilterStr = "出货类别='样品'"
    End Select
    If FilterStr <> "" Then strWhere = strWhere & " and " & FilterStr

    strWhere = Mid(strWhere, 6)

    '设置子窗体的筛选器条件
    Me.frm_高压管销售清单_List.Form.Filter = strWhere
    '应用筛选
    Me.frm_高压管销售清单_List.Form.FilterOn = True
End Sub

 

 

access培训  诚聘access开发人员

    王萌萌
      获得社区协助:请教问题(即发帖)153篇,其中获得解决的143篇;
      协助社区成员:协助他人(即回帖)17篇,其中被设为【最佳答案】的7篇;
      协助我们社区:发布技术文章0篇,邀请了0名新会员注册本社区(如何邀请会员注册,详见:http://www.accessoft.com/sitehelp.asp)。
Top

扫描下方工作人员的微信二维码加微信,邀您加入Access课堂微信群,进入一个技术交际圈:

网站工作人员微信

煮江品茶 等级:荣誉管理员★★★★★ 积分:5172 金币:17920 来自:武汉Access交流中心 发表于2016/10/13 12:24:06 
1楼 得分: 0
简单问题复杂化了

    很高兴与您就本帖子进行交流,如果我的回答已经解决了您的问题,请点击上方的“最佳答案”,这样本帖子就不会在“待解决问题区”显示了,我也将获得2个积分奖励,并不会减少您的积分!
    煮江品茶
      获得社区协助:请教问题(即发帖)11篇,其中获得解决的7篇;
      协助社区成员:协助他人(即回帖)4989篇,其中被设为【最佳答案】的1593篇;
      协助我们社区:发布技术文章448篇,邀请了47名新会员注册本社区(如何邀请会员注册,详见:http://www.accessoft.com/sitehelp.asp)。
MDZZ 等级:版主★★★★★ 积分:1255 金币:5840 来自:南京Access交流中心 发表于2016/10/13 13:08:01 
2楼 得分: 0

  Select Case Me.开票状态.Value
    Case "全部"
    FilterStr = ""

     Case "已开票"
     FilterStr = "开票状态=-1 "

     Case "未开票"
        FilterStr = "开票状态=0"

    End Select
    
    Select Case Me.出货类别.Value
    Case "全部"
    FilterStr = ""

     Case "发货"
     FilterStr = "出货类别='发货' "

     Case "换货"
        FilterStr = "出货类别='换货'"
     
     Case "样品"
        FilterStr = "出货类别='样品'"
    End Select
    If FilterStr <> "" Then strWhere = strWhere & " and " & FilteStr

这部分不觉得有问题吗 



    希望我的回答能解决了您的问题,或者所附上的这些信息对您有所帮助!如有任何疑问或需要进一步帮助,请您直接在本站发贴,我们非常乐意帮助您解决问题!
    如果我的回答已经解决了您的问题,请点击上方的“最佳答案”,这样本帖子就不会在“待解决问题区”显示了,以方便大家对那些正在等待解决的帖子给予关注!
    Natsume Takashi   [协助社区成员回帖1072篇,其中【最佳答案】369篇;发布技术文章146篇。]
    Access软件网助教团队 
    http://www.umvsoft.com
    如果您没有注册这个论坛,请单击下面的链接进行注册,与我在论坛进行交流:
    http://www.accessoft.com/reg/reg.asp?userid=47512
    本贴子以“现状”提供且没有任何担保,同时也没有授予任何权利。
王岚 等级:普通会员 积分:14 金币:0 来自:上海Access交流中心 发表于2016/10/13 13:08:32 
3楼 得分: 0
不明白,请指教。

    王萌萌
      获得社区协助:请教问题(即发帖)153篇,其中获得解决的143篇;
      协助社区成员:协助他人(即回帖)17篇,其中被设为【最佳答案】的7篇;
      协助我们社区:发布技术文章0篇,邀请了0名新会员注册本社区(如何邀请会员注册,详见:http://www.accessoft.com/sitehelp.asp)。
王岚 等级:普通会员 积分:14 金币:0 来自:上海Access交流中心 发表于2016/10/13 13:33:36 
4楼 得分: 0

那应该如何做呢?



    王萌萌
      获得社区协助:请教问题(即发帖)153篇,其中获得解决的143篇;
      协助社区成员:协助他人(即回帖)17篇,其中被设为【最佳答案】的7篇;
      协助我们社区:发布技术文章0篇,邀请了0名新会员注册本社区(如何邀请会员注册,详见:http://www.accessoft.com/sitehelp.asp)。
煮江品茶 等级:荣誉管理员★★★★★ 积分:5172 金币:17920 来自:武汉Access交流中心 发表于2016/10/13 14:09:16 最佳答案
5楼 得分: 2
1、开票状态用值列表,数据源为:-1;开票;0;未开票,绑定列为1,列数为2,列宽为0
2、筛选语句:
dim wh as string
wh="True"


if isnull(me.开始日期.value)=false then
   wh=wh & " and 送货日期>=#" & me.开始日期.value & "#"
end if


if isnull(me.结束日期.value)=false then
   wh=wh & " and 送货日期<=#" & me.结束日期.value & "#"
end if




if (isnull(me.出货类别.value) or me.出货类别.value="全部")=false then
   wh=wh & " and 出货类别='" & me.出货类别.value & "'"
end if


if isnull(me.开票状态.value)=false then
   wh=wh & " and 开票状态=" & me.出货类别.value
end if


Me.frm_高压管销售清单_List.Form.Filter = wh
Me.frm_高压管销售清单_List.Form.FilterOn = True


    很高兴与您就本帖子进行交流,如果我的回答已经解决了您的问题,请点击上方的“最佳答案”,这样本帖子就不会在“待解决问题区”显示了,我也将获得2个积分奖励,并不会减少您的积分!
    煮江品茶
      获得社区协助:请教问题(即发帖)11篇,其中获得解决的7篇;
      协助社区成员:协助他人(即回帖)4989篇,其中被设为【最佳答案】的1593篇;
      协助我们社区:发布技术文章448篇,邀请了47名新会员注册本社区(如何邀请会员注册,详见:http://www.accessoft.com/sitehelp.asp)。
王岚 等级:普通会员 积分:14 金币:0 来自:上海Access交流中心 发表于2016/10/17 11:49:55 
6楼 得分: 0

报错。



    王萌萌
      获得社区协助:请教问题(即发帖)153篇,其中获得解决的143篇;
      协助社区成员:协助他人(即回帖)17篇,其中被设为【最佳答案】的7篇;
      协助我们社区:发布技术文章0篇,邀请了0名新会员注册本社区(如何邀请会员注册,详见:http://www.accessoft.com/sitehelp.asp)。
总记录:6篇  页次:1/1 9 1 :
您还没有在Access软件网登录不能回复帖子
  • 你没有登录,请点击后面链接登录:登录
  • 如果你没有注册,请点击后面链接注册:注册,注册完成后,请再次访问本页功能。