【问题标题】:Highlight unique values based on another range突出显示基于另一个范围的唯一值
【发布时间】:2016-08-13 16:40:01
【问题描述】:

第 1 列在 Sheet1 中,第 2 列在 Sheet2 中。如果未找到该值,则突出显示该单元格。我正在尝试比较两列。我认为 语法不正确。请在下面查看我正在尝试的代码:

Option Explicit

Sub VlookupColoums()
   ' declarations
    Dim lookFor As Range
    Dim srchRange As Range
    Dim I As Long
    Dim vtest As Variant
    ' start
    Set lookFor = Sheets("Sheet1").Range("A13").End(xlUp)
  Set srchRange = Sheets("Sheet2").Range("A2").End(xlUp)
  vtest = Application.VLookup(lookFor.Rows.Count, srchRange.Rows.Count, 2, False)
    ' process
   For I = 1 To lookFor.Rows.Count
    If IsError(vtest) Then
srchRange.Interior.Color = 4
Else
Exit Sub
End If
Next I


End Sub

【问题讨论】:

  • 带有countif 的条件格式有什么问题?使用复杂而奇怪的 VBA 宏有什么特别的原因吗?
  • 在这种情况下条件格式将如何工作?
  • 其实很好。 :) 给我一分钟,让我写一个答案。
  • 您要突出显示 Sheet1 或 Sheet2 上的单元格吗?在另一张纸上突出显示 no 匹配的单元格?
  • 在工作表 2 中突出显示。突出显示另一工作表上不匹配的单元格

标签: vba excel highlight vlookup


【解决方案1】:

假设您在 Sheet1!A1:A15 和 Sheet2!A1:A10 上有数据。

还假设您要突出显示 Sheet2 上的唯一单元格(在另一个列表中没有至少一个相同的单元格)。

基本上,您希望格式化所有在另一个列表中计数为 0 的单元格。步骤:

  1. 选择要在 Sheet2 上评估的所有单元格
  2. 转到Home/Styles/Conditional Formatting
  3. 选择New Rule,然后选择Use a formula to determine...
  4. 输入这个公式:=COUNTIF(Sheet1!$A$1:$A$5,A1)=0
  5. 单击“格式”按钮,为唯一单元格设置格式
  6. 好的
  7. 利润。 :)

【讨论】:

  • @James Cool,很高兴我能帮上忙。然后将其标记为答案? :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多