【问题标题】:Find duplicates in a coulmn and highlight row background color with alternate color在列中查找重复项并使用替代颜色突出显示行背景颜色
【发布时间】:2017-03-15 20:28:45
【问题描述】:

  1. 我想突出显示行的单元格颜色(文本在“A”列到 当“A”列中的值相同并且想要时,“G”)具有相同的颜色 对所有行重复相同的操作并应用其他颜色。
  2. 还想将 2 个单元格中的字体颜色更改为红色(“F”列和 "G") 当“F”列中有“文件在 EMEA 服务器上”文本时。

【问题讨论】:

  • 请注意,SO 不是“我的代码”网站。尝试 1) 循环遍历所有行的代码。 2) 随着循环的进行,检查 A 列中的实际值和以前的值(如果数据已排序,这将起作用),并且 3) 如果两个值相同,则突出显示整行。尝试使用谷歌搜索 excel vba check two cell valuesexcel vba highlight row
  • 这个问题被问了太多次了。 google.com/…

标签: vba excel


【解决方案1】:

此宏在 2 种颜色之间交替,随着 A 列中的值变化而变化。

Sub Highlighting()

Dim rw As Long
Dim lastrw As Long

' Define 2 different highlighting colours by their RGB values
Dim col1 As Long
Dim col2 As Long
col1 = RGB(255, 230, 180)
col2 = RGB(180, 230, 255)
' "Current" colour for highlighting
Dim col As Long
col = col1

With ThisWorkbook.ActiveSheet
    ' Get last row by last non-empty cell in column A
    lastrw = .Cells(.Rows.Count, 1).End(xlUp).Row
    ' Cycle through column A
    For rw = 1 To lastrw
        ' Highlight row with current colour
        .Range("A" & rw & ":G" & rw).Interior.Color = col
        ' If column A value in next row is different, change colour
        If .Cells(rw + 1, 1).Value <> .Cells(rw, 1) Then
            ' Set to whichever colour it is not
            If col = col1 Then
                col = col2
            Else
                col = col1
            End If
        End If
    Next rw
End With

End Sub

之前:

之后:

在某些情况下,您应该能够将字体颜色更改为红色,方法是将您自己的条件 If .Range("F" &amp; rw).Value = "Files ... " 等插入主 For 循环。

【讨论】:

  • 它工作得很好,我得到了迭代 1 到 52 个索引颜色的代码,但这只是弄乱了整个内容。所以上面的代码很适合在两种颜色之间切换。为了以红色突出显示文本,在条件格式中创建了新规则。添加公式 =$F1="Files are on EMEA server" 并添加 =$F:$G 以应用规则。
  • 如果你想要更多的颜色,你可以创建一个颜色数组,而不是交换你可以增加一些计数器,它指定数组中的元素。取决于多种颜色对您的重要性,两种颜色是仅用于分隔区域的最简单选择...
  • 不知何故,当我从 Personal.xlsb 执行上述代码时,它不起作用。
  • @Samadhan 一年后,一个广泛的“它不起作用”让事情变得难以诊断。我建议用问题详细信息提出另一个问题
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-07-16
  • 2013-09-29
  • 2011-03-24
  • 2014-01-15
  • 1970-01-01
  • 1970-01-01
  • 2013-03-23
相关资源
最近更新 更多