【问题标题】:Excel - how to find duplicates cells ONLY for cells containing specific textExcel - 如何仅查找包含特定文本的单元格的重复单元格
【发布时间】:2019-03-04 20:51:44
【问题描述】:

我已经在 excel 中摆弄条件格式规则有一段时间了,但我想不通。

我想自动突出显示所有重复的单元格——但我只想考虑某些单元格。

所以我需要 excel 只搜索包含此部分文本字符串“

我需要忽略所有不包含“

谢谢

【问题讨论】:

  • 不是一个单一的条件,尝试使用一个突出所有重复单元格的条件和另一个在“
  • 使用COUNTIFS 2 个条件
  • 使用<<< 作为标记对COUNTIFS 有问题(它被解释为小于)。你能把它换成其他角色吗?如果可以(例如###),那么条件格式公式为=COUNTIFS($A:$A,A1,$A:$A,"###*")>1

标签: excel formatting conditional


【解决方案1】:

也许这个site 会为您指明正确的方向。我认为它不会完全回答您的问题,但会有所帮助(如果您愿意接受 VBA 解决方案)。

编辑

我认为这种方法对你有用。

Option Explicit

Public Sub FindDuplicates()

    Dim MyRange As Range
    Dim Cell As Range
    Dim CountOfDuplicate As Long

    Set MyRange = ActiveSheet.Range("A1").CurrentRegion

    For Each Cell In MyRange
        CountOfDuplicate = Application.WorksheetFunction.CountIf(MyRange, "=" & Cell)
        If CountOfDuplicate > 1 And InStr(1, Cell, "<<<") > 0 Then
            Cell.Interior.Color = RGB(200, 200, 200)
        End If
    Next Cell

End Sub

上述过程将测试CurrentRegion 中的每个单元格的部分字符串&lt;&lt;&lt; 和大于1 的CountIfs 结果,并将单元格内部涂成灰色。让我知道这是否对您有用。

【讨论】:

  • 我将您代码中的 A1 替换为我的数据范围,并且
  • 奇怪。我测试了5次。有什么东西以灰色突出显示吗?你收到错误信息了吗?您是否将代码放在常规模块中?你的细胞是连续的吗?它适用于ActiveSheet
  • 范围是连续的,这是我使用的代码。我将它粘贴在我的 Excel 工作表选项卡上的“查看代码”上。我在 C 列中设置了 2 个值作为测试 - >> 和另一个 >>。我本来希望那些会以灰色显示,因为它们是带有 Set MyRange = ActiveSheet.Range("C:C").CurrentRegion
  • 嗯。通过单击Debug > Compile VBAProject 检查您粘贴的代码是否编译。我也将代码放在“查看代码”中,它仍然有效。我什至使用了您的 &lt;&lt;&lt;test1&gt;&gt;&gt; 示例。
  • 不知道该说什么。也许您将代码放在错误的工作表对象中?尝试添加一个模块并将代码放在那里。然后从Developer > Macros 运行它。否则,从 Visual Basic 编辑器运行它。该模块是它应该在的地方。
猜你喜欢
  • 2022-06-22
  • 2020-12-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-12
  • 2015-03-05
相关资源
最近更新 更多