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


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

主题:drawcell 问题

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


加好友 发短信
等级:六尾狐 帖子:1492 积分:9671 威望:0 精华:0 注册:2014/12/18 16:12:00
drawcell 问题  发帖心情 Post By:2022/11/28 12:13:00 [只看该作者]

Select Case e.Col.name 
    Case "D1", "D2", "D3", "D4", "D5", "D6", "D7", "D8", "D9", "D10", "D11", "D12", "D13", "D14", "D15", "D16", "D17", "D18", "D19", "D20", "D21", "D22", "D23", "D24", "D25", "D26", "D27", "D28", "D29", "D30", "D31", "D32", "D33", "D34", "D35", "D36", "D37", "D38", "D39", "D40", "D41", "D42", "D43", "D44", "D45", "D46", "D47", "D48", "D49", "D50" 
        Dim ary() As String = {"D1", "D2", "D3", "D4", "D5", "D6", "D7", "D8", "D9", "D10", "D11", "D12", "D13", "D14", "D15", "D16", "D17", "D18", "D19", "D20", "D21", "D22", "D23", "D24", "D25", "D26", "D27", "D28", "D29", "D30", "D31", "D32", "D33", "D34", "D35", "D36", "D37", "D38", "D39", "D40", "D41", "D42", "D43", "D44", "D45", "D46", "D47", "D48", "D49", "D50"}
        If array.Indexof(ary, e.Col.name) >= 0 Then
            For Each c As String In ary
                If e.Row(c).contains("P") Then
                    e.Style = "橙底"
                End If
                If e.Row(c).contains("F") Then
                    e.Style = "绿底"
                End If
            Next
        End If
End Select

上面 drawcell 里面的代码,我是希望含有P的列才是橙色,但是现在造成从D1 到 D50 的所有列都是橙色。请问要怎样修改才行呢?谢谢。

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


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

Select Case e.Col.name 
    Case "D1", "D2", "D3", "D4", "D5", "D6", "D7", "D8", "D9", "D10", "D11", "D12", "D13", "D14", "D15", "D16", "D17", "D18", "D19", "D20", "D21", "D22", "D23", "D24", "D25", "D26", "D27", "D28", "D29", "D30", "D31", "D32", "D33", "D34", "D35", "D36", "D37", "D38", "D39", "D40", "D41", "D42", "D43", "D44", "D45", "D46", "D47", "D48", "D49", "D50" 
if e.Row.isnull(e.Col.name) = false
                If e.Row(e.Col.name).contains("P") Then
                    e.Style = "橙底"
                elseIf e.Row(c).contains("F") Then
                    e.Style = "绿底"
                End If
End If
End Select

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


加好友 发短信
等级:六尾狐 帖子:1492 积分:9671 威望:0 精华:0 注册:2014/12/18 16:12:00
  发帖心情 Post By:2022/11/28 16:26:00 [只看该作者]

谢谢。

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


加好友 发短信
等级:六尾狐 帖子:1492 积分:9671 威望:0 精华:0 注册:2014/12/18 16:12:00
  发帖心情 Post By:2022/12/8 9:09:00 [只看该作者]

Select Case e.Col.name 
    Case "D1", "D2", "D3", "D4", "D5", "D6", "D7", "D8", "D9", "D10", "D11", "D12", "D13", "D14", "D15" 
       For Each r As Row In Tables("模具项目进度").rows
            Dim r1 As Row = Tables("模具项目进度").rows(r.index + 1)
            If r("计划实际") = "月份" Then '找出月份那行
                If r(e.Col.name) = "10" Then '如果某列的月份一行等于10
                    If r1(e.Col.name) = "1" Then '如果某列的日期一行等于1
                            e.Style = "红底白字"
                    End If
                End If
            End If
        Next 
end select

上面代码我希望月份那行为10,在其下一行的日期为1的时候,1号这个日期就是红底白字。但是,运行结果是10月1日这列全列都是红底白字。请问要怎样修改代码?谢谢。

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


加好友 发短信
等级:超级版主 帖子:106680 积分:542589 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/12/8 9:22:00 [只看该作者]

截图看看表格数据是怎么样的

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


加好友 发短信
等级:六尾狐 帖子:1492 积分:9671 威望:0 精华:0 注册:2014/12/18 16:12:00
  发帖心情 Post By:2022/12/8 10:35:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:图片2.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:超级版主 帖子:106680 积分:542589 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/12/8 10:43:00 [只看该作者]

Select Case e.Col.name 
    Case "D1", "D2", "D3", "D4", "D5", "D6", "D7", "D8", "D9", "D10", "D11", "D12", "D13", "D14", "D15" 
            If e.row("计划实际") = "月份" Then '找出月份那行
Dim r1 As Row = e.Table.rows(e.row.index - 1)
                If r1(e.Col.name) = "10" andalso e.row(e.Col.name) = "1" Then '如果某列的月份一行等于10
                    e.Style = "红底白字"
                End If
            End If
end select

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


加好友 发短信
等级:六尾狐 帖子:1492 积分:9671 威望:0 精华:0 注册:2014/12/18 16:12:00
  发帖心情 Post By:2022/12/8 11:16:00 [只看该作者]

谢谢。

 回到顶部