计算多个范围内的重复值的百分比

时间:2017-04-04 12:42:48

标签: excel excel-formula duplicates

下面的示例电子表格显示了两列。 列A包含两个不同的分组,由两个灰色行轮廓表示。 B列包含"赋值模块"对于每个小组。

在C栏中我想表明重复的百分比"分配模块"在每个组内(注意几个垂直合并的单元格)。

"分配模块的数量"每个分组不同。因此我不能使用一个静态范围。

任何人都可以建议我如何计算重复的数量"任务模块"每组?

谢谢!

E.G

细胞C3(合并的C3-8)= 83%

细胞C10(合并的C10-13)= 100%

enter image description here

2 个答案:

答案 0 :(得分:1)

您可以在第1组C列中使用此选项来复制%:

=COUNTIF(B3:B8,B3:B8)/ROWS(B3:B8)

第2组:

=COUNTIF(B10:B11,B10:B11)/ROWS(B10:B11)

或者,您可以将每个组范围定义为已定义的名称:

=COUNTIF(Group1,Group1)/ROWS(Group1)


=COUNTIF(Group2,Group2)/ROWS(Group2)

enter image description here

编辑:

好的,我相信无论订单如何,我都会返回有重复的组的百分比。

=1-SUMPRODUCT(ROUNDDOWN(1/COUNTIF(B3:B8,B3:B8),0))/ROWS(B3:B8)

enter image description here

答案 1 :(得分:1)

这是一个数组公式,进入C3。它搜索A列的下一行,以查找下一组开始的位置;这用于确定当前组的范围。最后一组需要在A列的下一行中使用虚拟值来标识最后一组的范围。

无法将数组公式保存到合并的单元格,因此您需要首先取消合并C列中的所有单元格。然后在C3中输入此公式并按CTRL+SHIFT+ENTER而不是ENTER来保存:

=1-SUM((COUNTIF(OFFSET(B3,0,0,MATCH("*",A3:A101,0)-1),OFFSET(B3,0,0,MATCH("*",A3:A101,0)-1))=1)*1)/(SUM((OFFSET(B3,0,0,MATCH("*",A3:A101,0)-1)<>0)*1))

然后,您可以复制整个单元格并将其粘贴到每个组的第一行旁边。然后,如果需要,可以在C列中重新合并单元格。

Formula