Foxtable(狐表)用户栏目专家坐堂 → 相同值的行的颜色表示


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

主题:相同值的行的颜色表示

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


加好友 发短信
等级:童狐 帖子:288 积分:2404 威望:0 精华:0 注册:2017/6/19 23:37:00
相同值的行的颜色表示  发帖心情 Post By:2018/4/1 10:46:00 [只看该作者]

老师您好,
想要做到把如附件表中,地址相同的行用同一个颜色表示出来,

需要操作的表

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20180401104207gggggg.png
图片点击可在新窗口打开查看

需要达到的目标操作状态

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20180401104115zzzzzz.png
图片点击可在新窗口打开查看

未必需要有很多种颜色,单至少希望能有两种,能够把事例中C和E这样相邻的用不同的颜色来区分开来

谢谢


[此贴子已经被作者于2018/4/1 10:46:23编辑过]

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


加好友 发短信
等级:六尾狐 帖子:1249 积分:9474 威望:0 精华:0 注册:2013/5/12 9:22:00
  发帖心情 Post By:2018/4/1 11:28:00 [只看该作者]

Dim paint As Boolean
With Tables("进项税")
    .Sort = "销售方"
    For i As Integer = 1 To .Rows.Count -1
        If .Rows(i)("销售方") <> .Rows(i-1)("销售方") Then
            paint = Not paint
        End If
        If paint Then
            .SetHeaderCellBackColor("销售方",Color.Cyan,i+1)
        Else
            .SetHeaderCellBackColor("销售方",Color.Orchid,1)
            .SetHeaderCellBackColor("销售方",Color.Orchid,i+1)
        End If
    Next
End With

效果如下图:

图片点击可在新窗口打开查看此主题相关图片如下:交替染色.png
图片点击可在新窗口打开查看

[此贴子已经被作者于2018/4/1 11:59:13编辑过]

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


加好友 发短信
等级:四尾狐 帖子:977 积分:6835 威望:0 精华:0 注册:2012/4/2 21:49:00
  发帖心情 Post By:2018/4/1 12:41:00 [只看该作者]

顶2楼,很实用,更易区分内容,建议列入帮助。
按2楼修改的通用代码:
Dim paint As Boolean
Dim cname As String =CurrentTable.Cols(CurrentTable.ColSel).name
With CurrentTable
    .Sort = cname ’ 或降序:.Sort = cname & " desc"
    For i As Integer = 1 To .Rows.Count -1
        If .Rows(i)(cname) <> .Rows(i-1)(cname) Then
            paint = Not paint
        End If
        If paint Then
            .SetHeaderCellBackColor(cname,Color.Cyan,i+1)
        Else
            .SetHeaderCellBackColor(cname,Color.Gold,1) ‘换一种底色
            .SetHeaderCellBackColor(cname,Color.Gold,i+1)
        End If
    Next
End With
[此贴子已经被作者于2018/4/1 12:43:16编辑过]

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


加好友 发短信
等级:一尾狐 帖子:466 积分:3382 威望:0 精华:0 注册:2016/12/21 22:58:00
  发帖心情 Post By:2018/4/1 12:57:00 [只看该作者]

如果列名有带有 "_" ,即带有换行显示的列名,显示效果出错

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


加好友 发短信
等级:六尾狐 帖子:1249 积分:9474 威望:0 精华:0 注册:2013/5/12 9:22:00
回复:(WELOVEFOX)如果列名有带有 "_" ,即带有换行显...  发帖心情 Post By:2018/4/1 13:12:00 [只看该作者]

修改i的初始值即可! 

[此贴子已经被作者于2018/4/1 13:45:51编辑过]

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


加好友 发短信
等级:童狐 帖子:288 积分:2404 威望:0 精华:0 注册:2017/6/19 23:37:00
  发帖心情 Post By:2018/4/1 13:15:00 [只看该作者]

非常感谢,测试了一下,指定的列可以实现颜色分配。但如果希望能把颜色扩展到整个一行,该如何呢?

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


加好友 发短信
等级:六尾狐 帖子:1249 积分:9474 威望:0 精华:0 注册:2013/5/12 9:22:00
回复:(jackchan120925)非常感谢,测试了一下,指定...  发帖心情 Post By:2018/4/1 13:45:00 [只看该作者]

'--------------------交替染色------------------------------
Dim paint As Boolean
With Tables("进项税")
    .Sort = "销售方"
    For i As Integer = 1 To .Rows.Count -1
        If .Rows(i)("销售方") <> .Rows(i-1)("销售方") Then
            paint = Not paint
        End If
        If paint Then
            For Each c As Col In .Cols
                .SetHeaderCellBackColor(c.Name,Color.Cyan,i+1)
            Next
        Else
            For Each c As Col In .Cols
                .SetHeaderCellBackColor(c.Name,Color.Orchid,1)
                .SetHeaderCellBackColor(c.Name,Color.Orchid,i+1)
            Next
        End If
    Next
End With
'---------------------------------------------------------

效果如下:

图片点击可在新窗口打开查看此主题相关图片如下:交替染色02.png
图片点击可在新窗口打开查看

[此贴子已经被作者于2018/4/1 13:50:17编辑过]

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


加好友 发短信
等级:童狐 帖子:288 积分:2404 威望:0 精华:0 注册:2017/6/19 23:37:00
  发帖心情 Post By:2018/4/1 13:54:00 [只看该作者]

非常感谢,我研究下。我看截图,你是自己做了个财务系统么?

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


加好友 发短信
等级:六尾狐 帖子:1249 积分:9474 威望:0 精华:0 注册:2013/5/12 9:22:00
回复:(jackchan120925)非常感谢,我研究下。我看截...  发帖心情 Post By:2018/4/1 14:17:00 [只看该作者]

在2楼的基础上,遍历所有列即可!
截图是我的测试数据。自己做的一个辅助报税的小东东。
[此贴子已经被作者于2018/4/1 14:18:46编辑过]

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


加好友 发短信
等级:六尾狐 帖子:1249 积分:9474 威望:0 精华:0 注册:2013/5/12 9:22:00
回复:(shenyl0211)顶2楼,很实用,更易区分内容,建...  发帖心情 Post By:2018/4/1 14:20:00 [只看该作者]

感谢3楼的完善,使之更具通用性!

 回到顶部