我在Excel中有两列标识单个记录(ID和代码)。其中一些可能会多次出现。对于某些记录,代码可能会丢失。并且一些ID属于多个代码。我需要找到与给定代码具有非唯一关联的这些ID,并显示它们是什么。
最小例子:
ID code
K151 ABC
K152 BCD
K153 EFG
K154
K151 ABC
K154 HDG
K153 EFF
K151 ABC
K153 EFG
所以我需要一个列表(可能包含出现次数):
ID code freq
153 EFG 2
153 EFF 1
154 1
154 HDG 1
使用数据透视表执行类似操作相当容易,但请注意,例如K151 - ABC发生3次,不应该列出,只有那些具有多个代码的ID。此外,在数据透视表中,代码在ID下折叠为父类别,并且它们不会并排显示。
如果在新变量中的原始表中标记了非唯一编码的ID,那么也可以使用该标志手动过滤这些记录。
ID code flag
K151 ABC 0
K152 BCD 0
K153 EFG 1
...
K153 EFF 1
...
我需要在Excel(2013)中找到一个解决方案,而不是VBA或其他任何东西,理想情况下该解决方案也应与LibreOffice Calc兼容。
答案 0 :(得分:1)
标记将很简单。
C2
向下的公式:
=COUNTIF($A:$A,"="&A2)<>COUNTIFS($A:$A,"="&A2,$B:$B,"="&B2)
D2
向下的公式:
=IF(C2,COUNTIFS($A:$A,"="&A2,$B:$B,"="&B2),0)
对于OpenOffice,我们需要SUMPRODUCT
,因为COUNTIF
如果为空则不会计算。
C2
向下的公式:
=COUNTIF($A$1:$A$20,"="&A2)<>SUMPRODUCT(($A$1:$A$20=A2)*($B$1:$B$20=B2))
D2
向下的公式:
=IF(C2,SUMPRODUCT(($A$1:$A$20=A2)*($B$1:$B$20=B2)),0)
答案 1 :(得分:0)
COUNTIFS
获取多个列标准以获取每行的计数。