Foxtable(狐表)用户栏目专家坐堂 → [求助]单元格颜色报错求助


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

主题:[求助]单元格颜色报错求助

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/15 14:24:00 [显示全部帖子]

If e.Row.IsNull("日期") = False Then

 

改成

 

If e.Row.IsNull("日期") = False andalso e.row.isnull("创建日期") = false Then


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/15 15:14:00 [显示全部帖子]

If e.Col.Name = "日期" Then
    'If e.Row.IsNull("日期") = False Then  '这个是日期值,不能这样比较的
    If e.Row.IsNull("日期") = False AndAlso e.Row.isnull("创建日期") = False Then
        If e.Row("日期") <= e.Row("创建日期").AddDays(-8) Then
            e.Style = "样式7"
        End If
        If e.Row("创建日期").AddDays(-7)  < e.Row("日期") And  e.Row("日期") < e.Row("创建日期").AddDays(-5) Then
            e.Style = "样式6"
        End If
        If e.Row("创建日期").AddDays(-6)  < e.Row("日期") And  e.Row("日期") < e.Row("创建日期").AddDays(-4) Then
            e.Style = "样式5"
        End If
       
        If e.Row("创建日期").AddDays(-5)  < e.Row("日期") And  e.Row("日期") < e.Row("创建日期").AddDays(-3) Then
            e.Style = "样式4"
        End If
        If e.Row("创建日期").AddDays(-4)  < e.Row("日期") And  e.Row("日期") < e.Row("创建日期").AddDays(-2) Then
            e.Style = "样式3"
        End If
        If e.Row("创建日期").AddDays(-3)  < e.Row("日期") And  e.Row("日期") < e.Row("创建日期").AddDays(-1) Then
            e.Style = "样式2"
        End If
        If e.Row("创建日期").AddDays(-2)  < e.Row("日期") And  e.Row("日期") < e.Row("创建日期").AddDays(0) Then
            e.Style = "样式1"
        End If
       
        If e.Row("创建日期") <= e.Row("日期").AddDays(-4) Then
            e.Style = "提前5"
        End If
        If e.Row("日期").AddDays(-5)  < e.Row("创建日期") And  e.Row("创建日期") < e.Row("日期").AddDays(-3) Then
            e.Style = "提前4"
        End If
        If e.Row("日期").AddDays(-4)  < e.Row("创建日期") And  e.Row("创建日期") < e.Row("日期").AddDays(-2) Then
            e.Style = "提前3"
        End If
        If e.Row("日期").AddDays(-3)  < e.Row("创建日期") And  e.Row("创建日期") < e.Row("日期").AddDays(-1) Then
            e.Style = "提前2"
        End If
        If e.Row("日期").AddDays(-2)  < e.Row("创建日期") And  e.Row("创建日期") < e.Row("日期").AddDays(0) Then
            e.Style = "提前1"
        End If
    End If
End If

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/12/21 11:13:00 [显示全部帖子]

Dim r As Row = e.Row
If r IsNot Nothing Then
    If e.Col.Name = "日期" Then
        If e.Row.IsNull("日期") = False AndAlso e.Row.isnull("创建日期") = False Then
            Dim dt As Date = r("创建日期")
            Dim dtf As Date = r("日期")
            Dim n As Integer = (dtf - dt).TotalDays
            If n = -3  Then '如果已经过期
                e.Style = "样式2"
            ElseIf n = -2  Then '如果已经过期
                e.Style = "样式1"
            ElseIf n = -1  Then '如果已经过期
                e.Style = "提前1"
            ElseIf n = 0 Then '如果已经过期
                e.Style =  "提前2"
            ElseIf n = 1 Then '如果已经过期
                e.Style = "提前3"
            ElseIf n = 2 Then '如果已经过期
                e.Style = "提前4"
            ElseIf n = 3 Then '如果已经过期
                e.Style = "提前5"
            End If
        End If
    End If
End If

 回到顶部