查找所有重复单元格,确定是否存在与重复项匹配的值,填写重复行单元格的下一列值为 0
Find all duplicate cells, Identify if value exist that matches the duplicate, Fill in next column of the duplicate row cell has value of 0
这有点复杂,但如果有人可以提供帮助。我将不胜感激。
我想做的是:
- 在 A 列 (sku) 中查找重复值
- 如果该重复单元格的 D 列中存在值
- 用 D 中的值填充 E 列 IF 列 C = 0
提前致谢
您应该可以通过使用 CTRL + SHIFT + ENTER
(在 Excel 365 之前)在 E2 中输入以下公式,然后将其复制下来:
=IFERROR(IF(C2=0,INDEX($D:$D,MATCH(1,(A2=$A:$A)*(""<>$D:$D),0)),""),"")
将 $A
和 $D
调整到您的范围的完整长度。
重要的部分是(A2=$A:$A)*(""<>$D:$D)
。这会为每一行生成一个包含 1
的数组,其中 $A:$A
等于 A2
并且 $D:$D
不为空,并且 0
用于所有其他行。第一个(也是此处:唯一的)匹配将导致 5
,我们将在 INDEX
中使用它来获取值(仅在 C2=0
时返回)。 IFERROR
纠正任何 #N/A errors
.
希望这对您有所帮助。
这有点复杂,但如果有人可以提供帮助。我将不胜感激。
我想做的是:
- 在 A 列 (sku) 中查找重复值
- 如果该重复单元格的 D 列中存在值
- 用 D 中的值填充 E 列 IF 列 C = 0
提前致谢
您应该可以通过使用 CTRL + SHIFT + ENTER
(在 Excel 365 之前)在 E2 中输入以下公式,然后将其复制下来:
=IFERROR(IF(C2=0,INDEX($D:$D,MATCH(1,(A2=$A:$A)*(""<>$D:$D),0)),""),"")
将 $A
和 $D
调整到您的范围的完整长度。
重要的部分是(A2=$A:$A)*(""<>$D:$D)
。这会为每一行生成一个包含 1
的数组,其中 $A:$A
等于 A2
并且 $D:$D
不为空,并且 0
用于所有其他行。第一个(也是此处:唯一的)匹配将导致 5
,我们将在 INDEX
中使用它来获取值(仅在 C2=0
时返回)。 IFERROR
纠正任何 #N/A errors
.
希望这对您有所帮助。