设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[查询] 求助: 查询中怎么处理类似于 case的条件选择?

[复制链接]
跳转到指定楼层
1#
发表于 2006-11-24 23:24:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
求助   查询中  要进行条件判断

  例:  列: 金额       付款方式

             当付款方式为A时   控制金额显示 (金额<0时显示金额为0, >0时金额为自身利益)

              当付款方式为B时  控制金额显示(金额=金额)

           当付款方式为C时   控制金额显示(金额=0)

    类似这样的条件选择在查询中怎么做? 新手,请教得详细点 谢谢
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2006-11-24 23:27:00 | 只看该作者
3#
发表于 2006-11-24 23:28:00 | 只看该作者
IIF
4#
发表于 2006-11-25 00:25:00 | 只看该作者
如果很多CASE的话,建议写个公式调用
5#
 楼主| 发表于 2006-11-27 18:32:00 | 只看该作者
楼上的 这是不一样的问题.  

还有用iif 能调用其他列数据进行判断么?  用iif也显得过于绕了

公式调用? 高手说清楚点啊啊  
6#
发表于 2006-11-27 19:33:00 | 只看该作者
这个如何用case套用

Dim a, B, c, d, e, f, g, h, I, J, k, l, m, n, p, q, r, s, t As Single

   
    Dim pr As Currency

    pr = Nz(DLookup(Me.工序名称, "产品表", "[产品编号]=" & 产品代号.Value), 0)
    a = DLookup("倍数", "样品计件参数", "[序号] = 1")    '彩样
    B = DLookup("倍数", "样品计件参数", "[序号] = 2")    '彩样
    c = DLookup("倍数", "样品计件参数", "[序号] = 3")    '彩样
    d = DLookup("倍数", "样品计件参数", "[序号] = 4")    '彩样
    e = DLookup("倍数", "样品计件参数", "[序号] = 5")    '彩样
    f = DLookup("倍数", "样品计件参数", "[序号] = 6")    '彩样
    g = DLookup("倍数", "样品计件参数", "[序号] = 7")
    h = DLookup("倍数", "样品计件参数", "[序号] = 8")
    I = DLookup("倍数", "样品计件参数", "[序号] = 9")
    J = DLookup("倍数", "样品计件参数", "[序号] = 10")
    k = DLookup("倍数", "样品计件参数", "[序号] = 11")
    m = DLookup("倍数", "样品计件参数", "[序号] = 12")    '100PC以上(彩样)
    p = DLookup("倍数", "样品计件参数", "[序号] = 16")    '3倍
    q = DLookup("倍数", "样品计件参数", "[序号] = 17")   '2倍
    r = DLookup("倍数", "样品计件参数", "[序号] = 18")   '1.5倍
    s = DLookup("倍数", "样品计件参数", "[序号] = 19")   '1.5倍
    t = DLookup("倍数", "样品计件参数", "[序号] = 20")   '1倍


    订单量.Value = DLookup("订单量", "生产订单主档", "[产品代号]=" & 产品代号.Value & " And [订单号]='" & 订单号.Value & "'")


    If IsNull(订单量) Then
        MsgBox "此订单号中没有该产品,请检查订单号是否有错,否则不能显示订单量", vbExclamation, "提示"
        Me.产品代号.SetFocus
    End If


    Me.单价 = Nz(DLookup(Me.工序名称, "产品表", "[产品编号]=" & 产品代号.Value), 0)
    Me.产品名称 = DLookup("产品名称", "产品表", "[产品编号]=" & 产品代号.Value)

    If Forms![计件单]![单据类型] = "CH" Or Forms![计件单]![单据类型] = "LY" Then

        '========彩样室==========

        If Me.样品单 = True Then

            If Forms![计件单]![部门] = "8" Then
                If Me.订单量 >= 1 And Me.订单量 <= 2 Then                      '1---2
                    Me.单价2 = pr * a

                ElseIf Me.订单量 >= 3 And Me.订单量 <= 4 Then             '3---4
                    Me.单价2 = pr * B
                ElseIf Me.订单量 >= 5 And Me.订单量 <= 6 Then              '5---6
                    Me.单价2 = pr * c
                ElseIf Me.订单量 >= 7 And Me.订单量 <= 10 Then            '7--10
                    Me.单价2 = pr * d
                ElseIf Me.订单量 >= 11 And Me.订单量 <= 30 Then       '11---30
                    Me.单价2 = pr * e
                ElseIf Me.订单量 >= 31 And Me.订单量 <= 99 Then   '31---99
                    Me.单价2 = pr * f
                ElseIf Me.订单量 >= 100 Then                     '100以上
                    Me.单价2 = pr * m
                End If
    '=======================调油房===================================
            
            ElseIf Forms![计件单]![部门] = "46" Then
                If Me.订单量 >= 1 And Me.订单量 <= 2 Then                      '1---2
                    Me.单价2 = pr * a

                ElseIf Me.订单量 >= 3 And Me.订单量 <= 4 Then             '3---4
                    Me.单价2 = pr * B
                ElseIf Me.订单量 >= 5 And Me.订单量 <= 6 Then              '5---6
                    Me.单价2 = pr * c
                ElseIf Me.订单量 >= 7 And Me.订单量 <= 10 Then            '7--10
                    Me.单价2 = pr * d
                ElseIf Me.订单量 >= 11 And Me.订单量 <= 30 Then       '11---30
                    Me.单价2 = pr * e
                ElseIf Me.订单量 >= 31 And Me.订单量 <= 99 Then   '31---99
                    Me.单价2 = pr * f
                ElseIf Me.订单量 >= 100 Then                     '100以上
                    Me.单价2 = pr * m
                End
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-12-2 15:38 , Processed in 0.101580 second(s), 30 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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