【问题标题】:Compare 2 columns in Excel and show matching values iff in DIFFERENT rows比较 Excel 中的 2 列并在不同行中显示匹配值
【发布时间】:2020-06-12 07:01:16
【问题描述】:

我有一个包含 2 列的 excel 文件。如果两列中有匹配的值(重复),我的目的是突出显示单元格值。在这里,需要注意的主要一点是,只有当重复值属于 COLUMN 1 和 COLUMN 2 的不同行时,才应突出显示单元格。即,[COL1, ROW1] 值等于[COL2, ROW3]

因此,如果 COLUMN 1 中的任何值在 COLUMN 2 中可用但只有不同的行,请突出显示该单元格。

谢谢。

【问题讨论】:

  • 选择您要评估的整个范围,并在条件格式中为重复值应用格式
  • @Naresh 但是只有当值在同一行时才会显示重复,对吧?
  • 不,当您一次将格式应用于整个选择时,它应该显示选择中的所有值。
  • 好的。还需要进行一项更改。我会更新这个问题。如果它属于同一行,则不应显示重复。
  • 一个数字出现两次以上的可能性有多大?.. 同一个数字是否有可能在同一行出现两次,然后在下一行出现多次?

标签: excel excel-formula compare conditional-formatting


【解决方案1】:

请参见下图,您可以在条件格式中再添加一条规则,如果为真(“A”)则停止它,但如果相同的值(“A”)再次出现在选择的某处,它将突出显示。

【讨论】:

  • 请检查.. 公式中的行不是由 $ 固定的
  • 您的评论:如果 COLUMN 2 中有一个或多个匹配项但不在同一行中,我们可能可以突出显示 COLUMN 1 中的值。希望现在很清楚。 ....如果第一列中没有重复相同的数字,那么您只需将公式条件格式应用于第二列
【解决方案2】:

您可以通过两种方式解释问题。

(1) 你想检查当前行是否没有匹配,但其他地方有匹配。

对于第一列,您要检查它旁边的数字是否不一样,但在第二列的其他地方有匹配,所以使用自定义公式:

=AND(B1<>A1,COUNTIF(B:B,A1))

第二列也是如此:

=AND(A1<>B1,COUNTIF(A:A,B1))

(2) 你想检查其他地方是否有匹配即使当前行有匹配

=COUNTIF(B:B,A1)-(A1=B1)>0

=countif(A:A,B1)-(A1=B1)>0

【讨论】:

    【解决方案3】:

    您可以使用 SUMPRODUCT 来检查您想要的条件:

    如果第 1 列中的任何值在第 2 列中可用,但只有不同的行,则突出显示该单元格。

    我做了一个这样的假数据集:

    如您所见,只有值 13 的单元格符合条件,因为值 2 是重复的,但仅在同一行中,因此不应突出显示。

    我的条件格式规则基于以下公式:

    =SUMPRODUCT(--($B$4:$B$8=A4);--(ROW($B$4:$B$8)&lt;&gt;ROW(A4)))&gt;0

    这就是它的工作原理:

    1. --($B$4:$B$8=A4) 将根据与 A4 相同的值返回一个 1 和 0 的数组
    2. --(ROW($B$4:$B$8)&lt;&gt;ROW(A4)) 将返回一个 1 和 0 的数组,具体取决于哪些单元格与单元格 A4 的行号**不同*
    3. SUMPRODUCT 将两个数组相乘和相加,我们将得到一个 1 和 0 的最终数组。每个 1 表示有一个单元格具有相同的值但在不同的行上。我们将得到的所有 1 和 0 相加。
    4. 我们将上一步的结果与&gt;0 进行比较。如果为真,则表示有 1 个或多个单元格具有相同的值但位于不同的行,因此我们突出显示。

    希望这会有所帮助。

    更新:如果您也想突出显示第 2 列的值,您可以使用几乎相同的公式和 CF 规则,只需更改列引用:

    =SUMPRODUCT(--($A$4:$A$8=B4);--(ROW($A$4:$A$8)&lt;&gt;ROW(B4)))&gt;0

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多