示例代码:
Sub SortByCellColor() Dim rng As Range Set rng = Range("A1:D10") '要排序的单元格范围 With rng.Sort .SortFields.Clear .SortFields.Add(Range("A1:A10"), xlSortOnCellColor, xlAscending, , xlSortNormal).SortOnValue.Color = RGB(255, 0, 0) '按照红色单元格的值升序排序 .SetRange rng .Header = xlYes '范围中含有表头 .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin '排序方法为拼音排序 .Apply End With End Sub
注:上述示例代码是按照红色单元格的值进行排序的示例。如果要按照其他单元格颜色或图标进行排序,则需要修改相应的代码。