Excel:如何基于其他单元格的颜色在同一个范围内具有相同值的颜色?

我有一个10行到3列的范围/表格。

任何特定的单元格可以使用数据validation创build的列表中的任何特定值。 该范围内的所有单元格都具有相同的数据validation列表。

如果一个值在任何行或任何列上重复,而不是对angular或其他值,那么使用条件格式高亮显示这些值。

现在我想,如果在非重复的行或列的其他地方存在相同的值,那么这些单元格也应该被着色。 (最好使用不同于用于条件格式化的颜色以了解两者之间的差异)。

目的是要知道哪些值重复以及如何使用这些值,以及在哪些范围内使用这些值,但不按照标准重复。

Ps:请告知是否需要额外的信息或一些澄清。

参考附加的图像来更好地理解我的查询。 蓝色的是通过条件格式的颜色,绿色的需要通过你的帮助着色。

图像的理解

您可以使用条件格式 – >整个范围的重复值,具有不同的颜色,并在条件格式 – >pipe理规则中设置顺序。 我认为不需要VBA。

编辑:好吧,我想我知道你在问什么。 试试这个小程序:

Sub PaintDuplis() Dim rng As Range Dim col As Range Dim row As Range Dim cl As Range, cl2 As Range Set rng = Range("B4:D11") 'or whatever your range is. 'Columns For Each col In rng.Columns For Each cl In col.Cells If WorksheetFunction.CountIf(col, cl.Value) > 1 Then cl.Interior.Color = vbYellow Next cl Next col 'Rows For Each row In rng.rows For Each cl In row.Cells If WorksheetFunction.CountIf(row, cl.Value) > 1 Then cl.Interior.Color = vbYellow Next cl Next row 'Paint whole range For Each cl In rng If cl.Interior.Color = vbYellow Then For Each cl2 In rng If cl2.Value = cl.Value And cl2.Interior.Color <> vbYellow Then cl2.Interior.Color = vbRed Next cl2 End If Next cl 

我已经放弃了条件格式化,而是使用VBA在列/行中绘制重复项,然后用红色绘制所有仍为白色的单元格,如果它等于已经是黄色的单元格。 希望它有帮助。