以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  列的表达式  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=114742)

--  作者:wwylgy
--  发布时间:2018/2/20 9:31:00
--  列的表达式

图片点击可在新窗口打开查看此主题相关图片如下:tim截图20180220082721.png
图片点击可在新窗口打开查看
像这样的表,全勤奖是从缺勤天数那列计算得来,如果缺勤天数为0,全勤奖17,如果缺勤天数为0.5或1,全勤奖为10,如果缺勤天数为1.5或2,全勤奖为3,如果缺勤天数大于等于3,全勤奖为0,那在狐表里如何用表达式来解决这个问题呢?谢谢!

--  作者:新福星
--  发布时间:2018/2/20 9:45:00
--  
\'在该表的DataColChanged事件中加入下列代码

If e.DataCol.Name="缺勤天数" Then
    
    Select Case e.DataRow("缺勤天数")
        Case 0
            e.DataRow("全勤奖")=17
        Case 0.5 To 1
            e.DataRow("全勤奖")=10
        Case 1.5 To 2
            e.DataRow("全勤奖")=5
        Case Else
            e.DataRow("全勤奖")=0
    End Select
End If

--  作者:wwylgy
--  发布时间:2018/2/20 10:25:00
--  
非常感谢!问题已经解决
--  作者:有点甜
--  发布时间:2018/2/21 17:59:00
--  

用iif函数,也可以处理,看看

 

iif(缺勤天数=0, 17, iif(缺勤天数>=0.5 and 缺勤天数<=1, 10,iif(缺勤天数>=1.5 and 缺勤天数<=2, 5, 0)))