设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[查询] 子窗体查询结果怎么出现这样结果

[复制链接]
跳转到指定楼层
1#
发表于 2011-4-17 11:36:17 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
Private Sub Command21_Click()
Dim strWhere As String  '定义条件字符串
   
    strWhere = "" '设定初始值-空字符串
        
    If Not IsNull(Me.日期) Then
        '有输入
        strWhere = strWhere & "([日期] like '*" & Me.日期 & "*') AND "
    End If
   
    If Not IsNull(Me.未返金额) Then
        '有输入
        strWhere = strWhere & "([未返金额] like '*" & Me.未返金额 & "*') AND "
    End If
   
    If Not IsNull(Me.发货单位) Then
        '有输入
        strWhere = strWhere & "([发货单位] like '*" & Me.发货单位 & "*') AND "
    End If
            
    If Not IsNull(Me.收货人电话) Then
        '有输入
        strWhere = strWhere & "([收货人电话] like '*" & Me.收货人电话 & "*') AND "
    End If
   
    If Not IsNull(Me.货物名称) Then
        '有输入
        strWhere = strWhere & "([货物名称] like '*" & Me.货物名称 & "*') AND "
    End If
   
    If Not IsNull(Me.终点站) Then
        '有输入
        strWhere = strWhere & "([终点站] like '*" & Me.终点站 & "*') AND "
    End If
   
    If Not IsNull(Me.收货单位) Then
        '有输入
        strWhere = strWhere & "([收货单位] like '*" & Me.收货单位 & "*') AND "
    End If
    If Not IsNull(Me.付款方式) Then
        '有输入
        strWhere = strWhere & "([付款方式] like '*" & Me.付款方式 & "*') AND "
    End If
      '如果输入了条件,那么strWhere的最后肯定有" AND ",这是我们不需要的,
    '要用LEFT函数截掉这5个字符。
    If Len(strWhere) > 0 Then
        '有输入条件
        strWhere = Left(strWhere, Len(strWhere) - 5)
    End If
   
    查询4-1日的单子时子窗体查询结果怎么出现4-1日,4-11日,4-12日所有4月十几日的单子

   
   
    '让子窗体应用窗体查询
    Me.[发货信息查询].Form.Filter = strWhere
    Me.[发货信息查询].Form.FilterOn = True
End Sub
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
4#
 楼主| 发表于 2011-4-17 17:27:07 | 只看该作者
回复 todaynew 的帖子

谢谢老师!!爱死你了
3#
发表于 2011-4-17 12:06:41 | 只看该作者
本帖最后由 todaynew 于 2011-4-17 12:14 编辑

作为文本处理结果确当如此。
可将其改为:
strWhere = strWhere & "([日期] =#" & Me.日期 & "#)  AND  "

此外,以下语句也应修改为:
strWhere = strWhere & "([未返金额] =" & Me.未返金额 & ")  AND  "
实际上这就没有必要,原因在于未返金额千差万别,谁也记不住是多少,没必要作为查询条件。当然,如果确需,那么也应该是做一个区间的查询。

注意:字符型、日期型、数字型(包含逻辑型)字段的处理方法是完全不同的,不能一概用
" 字段变量 like '*"  &  控件变量 & "*'"
这种形式。



2#
 楼主| 发表于 2011-4-17 11:38:28 | 只看该作者
    查询4-1日的单子时子窗体查询结果怎么出现4-1日,4-11日,4-12日所有4月十几日的单子
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-16 18:53 , Processed in 0.106671 second(s), 28 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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