Foxtable(狐表)用户栏目专家坐堂 → if问题


  共有1712人关注过本帖树形打印复制链接

主题:if问题

帅哥哟,离线,有人找我吗?
jick0526
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:715 积分:6677 威望:0 精华:0 注册:2016/6/27 17:56:00
if问题  发帖心情 Post By:2017/7/11 20:50:00 [只看该作者]

老师,请问下,如果A列+B列+C列-D列会大于等于E列,则显示付款,否则显示未付,代码要怎么写,谢谢

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110592 积分:562856 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/7/11 21:28:00 [只看该作者]

dim r as row = tables("").Current
if r("A列")+ r("B")+ r("C") - r("D") >= r("E")  then
msgbox("付款")
else
msgbox("未付")
end if

 回到顶部
帅哥哟,离线,有人找我吗?
jick0526
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:715 积分:6677 威望:0 精华:0 注册:2016/6/27 17:56:00
  发帖心情 Post By:2017/7/11 21:57:00 [只看该作者]

老师,不好意思,上面的少写列了,是F列显示付款或未付款,代码能帮我改下吗?谢谢!
如果A列+B列+C列-D列会大于等于E列,F列则显示付款,否则显示未付,谢谢

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110592 积分:562856 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/7/11 22:03:00 [只看该作者]

表格datacolchanged事件

Select Case e.DataCol.name
    Case "A列","B列","C列","D列","E列"
        Dim r As DataRow = e.DataRow
        If r("A列")+ r("B列")+ r("C列") - r("D列") >= r("E列")  Then
            r("F列") = "付款"
        Else
            r("F列") ="未付"
        End If
End Select

 回到顶部
帅哥哟,离线,有人找我吗?
jick0526
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:715 积分:6677 威望:0 精华:0 注册:2016/6/27 17:56:00
  发帖心情 Post By:2017/7/12 15:28:00 [只看该作者]

老师,什么的代码A列至D列如果数字更换了或者为空了,F列值还是不会变,要A列至D列更新重置下列才会认到,可我的数据有几万行,重置一次都有等好久,我A列至D列是通过代码自动输入的,有没有办法不需要重置,F列就会认到数值变化从而做出判断

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110592 积分:562856 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/7/12 16:20:00 [只看该作者]

A列至D列如果不是表达式列肯定不会有问题的。检查你的数据是否符合计算要求

具体上传例子说明

 回到顶部
帅哥哟,离线,有人找我吗?
jick0526
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:715 积分:6677 威望:0 精华:0 注册:2016/6/27 17:56:00
  发帖心情 Post By:2017/7/18 4:25:00 [只看该作者]

老师,请问下,下面的代码我如果想加一个前提,就是当 "仓库" 列不等于空时,就执行下面的代码,如果为空,则不执行,这代码该怎么添加,谢谢!
Select Case e.DataCol.name
    Case "A列","B列","C列","D列","E列"
        Dim r As DataRow = e.DataRow
        If r("A列")+ r("B列")+ r("C列") - r("D列") >= r("E列")  Then
            r("F列") = "付款"
        Else
            r("F列") ="未付"
        End If
End Select

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/7/18 8:36:00 [只看该作者]

Select Case e.DataCol.name
    Case "A列","B列","C列","D列","E列","仓库"
        Dim r As DataRow = e.DataRow
        If r.IsNull("仓库") = False Then
            If r("A列")+ r("B列")+ r("C列") - r("D列") >= r("E列")  Then
                r("F列") = "付款"
            Else
                r("F列") ="未付"
            End If
        End If
End Select

 回到顶部