Excel - 根据匹配数对单元格进行排序

Excel - 根据匹配数对单元格进行排序

我在单元格 A1 到 E1 中有数据。它们都是数字。例如 6、13、13、3、15、。

我希望以某种方式对它们进行排序,即匹配数最多的排在第一位,然后是数字最高的,接着是数字较低的,数字最低的排在最后。

因此,理想的结果应该是这样的:

13,13,15,6,3。

我按照下列方法计算了比赛的数量:

H1 = COUNTIF($A1:$E1,A1) 并将其从 H1 扩展到 L1。

然后,按出现频率排序:

N1 =LARGE($H1:$L1,1),M1 =LARGE($H1:$L1,2),依此类推,并根据匹配数进行正确的排序:

2,2,1,1,1

现在我想以某种方式将匹配的序列和频率与原始数据联系起来。有人能建议这样的公式吗?

答案1

A2数组公式**

=INDEX($A1:$E1,MATCH(LARGE(COUNTIF($A1:$E1,$A1:$E1)+$A1:$E1/10^6,COLUMNS($A:A)),COUNTIF($A1:$E1,$A1:$E1)+$A1:$E1/10^6,0))

复制到E2

假设范围内的每个单元格A1:E1始终包含一个数字。

问候

**数组公式的输入方式与“标准”公式不同。您不必直接按 ENTER,而是先按住 CTRL 和 SHIFT,然后按 ENTER。如果您操作正确,您会注意到 Excel 在公式周围放置了花括号 {}(但不要尝试自己手动插入这些括号)。

答案2

我不知道这在您的处境下是否实用,但如果您可以将列转换为行,那么您可以很简单地做到这一点。

在此处输入图片描述

在此处输入图片描述

只需=COUNTIF(A:A,A1)在 B1 中使用并向下拖动,然后按 排序Column B,然后按 排序Column A。但是,如果您需要在列中使用它,则可能需要 VBA 解决方案。

相关内容