答案1
假设您要执行此操作的数据与您在问题中显示的数据完全一致,并且数据位于 A1:B22 范围内。
在这种情况下,以下公式就可以很好地发挥作用:
=SUMIF($A$1:$A$22, "="&UNIQUE($A$1:$A$22), $B$1:$B$22)
基本上,它是在条件参数中SUMIF()
使用的UNIQUE()
。这样您就可以一步自动获取所需的列表,无需进一步的工作。输出将是一个SPILL
数组,但这可能正是您想要的。使用其左侧的一列(也是一个SPILL
数组),只需:
=UNIQUE($A$1:$A$22)
为这些结果赋予适当的标签。
答案2
这可以帮助您:
::警告::
- 这适用于所有版本的 Excel。
- 如果您使用的是 Excel 2019、Office 365 等更高版本,那么您可以使用@Jeorje 显示的公式。
怎么运行的:
单元格 K2 中的数组(CSE)公式:
{=IFERROR(INDEX($H$2:$H$20, MATCH(0,COUNTIF($K$1:K1, $H$2:$H$20), 0)),"")}
完成配方Ctrl+Shift+Enter& 向下填充。
单元格 L2 中的公式:
=IF(SUMPRODUCT(($H$2:$H$37=K2)*($I$2:$I$37))=0,"",SUMPRODUCT(($H$2:$H$37=K2)*($I$2:$I$37)))
根据需要调整公式中的单元格引用。