6、根据指定列排序,不同行填充不同颜色

思路:

1、先对表进行排序

2、再对不同行填充不同颜色

最终效果图

代码:

Sub 不同行填充颜色()
Dim rng As Range
Dim ys As Byte
Dim r As Integer, c As Integer
    With ThisWorkbook.Sheets("sheet1")                      'sheet1可修改,你想在那个表进行颜色填充,就改成对应表的名
        r = .Cells(.Rows.Count, 1).End(xlUp).Row            '获取最大行号
        c = .Cells(1, .Columns.Count).End(xlToLeft).Column  '获取最大列号
        '先根据 A列排序。Key1:=.Range("A1")中字母 A 可修改,比如想根据 D 列排序,可写Key1:=.Range("D1")
         .Range("A1").CurrentRegion.Sort Key1:=.Range("A1"), Order1:=xlAscending, Header:=xlYes
        For Each rng In .Range("A2:A" & r)                  '可修改颜色填充依据列。如Range("A2:A" & r)中 A 可替换成Range("F2:F" & r)
            If rng.Value = rng.Offset(-1, 0).Value Then
                rng.Resize(1, c).Interior.ColorIndex = rng.Offset(-1, 0).Interior.ColorIndex
            Else
                ys = Application.WorksheetFunction.RandBetween(33, 39) '随机生成颜色数字,这里选择了颜色较浅的数字区间
                If ys = rng.Offset(1, 0).Interior.ColorIndex Then
                    ys = ys + 1
                End If
                rng.Resize(1, c).Interior.ColorIndex = ys
            End If
        Next rng
    End With
End Sub

有办公自动化需求的朋友可以在评论区留言,大家一起来研究研究。嘿嘿

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值