Excel :使用条件和组合计算唯一值
Excel : Count unique values using conditions and combos
为了简化这一点,假设我在 Excel 2013(或 LibreOffice)中有一个电子表格,其中有一个包含行的列表,我可以在其中看到以下值:
(抱歉,图片上传目前不适合我。我会尽快用快照替换等宽文本)
Country City Person Car Home
USA New York Alice 1 1
USA New York Bob 1 0
USA Washington Charlie 1 1
Canada Ontario Alice 0 1
Canada Ontario Bob 1 0
Canada Ontario Charlie 1 0
Canada Ontario Charlie 1 0
Canada Toronto Alice 1 1
Canada Toronto Bob 0 0
组合select或:
Country -> Canada
City -> Ontario
总计:
SUM Distinct people
Car 3 2
Home 1 2
值可以重复。我们可以看到查理在安大略省(加拿大)有 1 辆车的两条线。
然后我有两个组合可以按国家和城市过滤(我将简化只考虑城市),在底部我想使用以下公式计算:
给定组合中的 selected 城市,我可以加起来有多少辆汽车(和房屋)。一旦我定义了范围,我就得到了下面的公式。即安大略省有3辆汽车,即3辆:
=IF(A15<>"All",SUMIF(RegionRange,A15,Column1Range),SUM(Column1Range))
真题。给定组合中的 selected 城市,有多少不同的人在该城市拥有汽车。即安大略省虽然有3辆车,但只有2个人(Bob和Charlie)。查看有关 how to count unique values in Excel 的问题,我可以使用以下公式,但这不会考虑组合中的过滤器:
=SUM(IF(FREQUENCY(MATCH(Column1Range,Column1Range,0),MATCH(Column1Range,Column1Range,0))>0,1))
我的问题是我可以使用什么公式来代替之前的公式来考虑组合中的过滤器。
请注意,我希望数据保持可见并更新总计,因为我 select 组合中的某些内容,所以我想要的是计算它的公式,而不是使用自动过滤器。
您可以使用这个数组公式:
=SUM(IF(($B:$B=$H)*($D:$D>0),1/COUNTIFS($C:$C,$C:$C,$D:$D,">0",$B:$B,$H)))
作为数组公式,退出编辑模式时需要用Ctrl-Shift-Enter确认,而不是回车。如果操作正确,那么 Excel 将在公式周围放置 {}
。
为了简化这一点,假设我在 Excel 2013(或 LibreOffice)中有一个电子表格,其中有一个包含行的列表,我可以在其中看到以下值:
(抱歉,图片上传目前不适合我。我会尽快用快照替换等宽文本)
Country City Person Car Home
USA New York Alice 1 1
USA New York Bob 1 0
USA Washington Charlie 1 1
Canada Ontario Alice 0 1
Canada Ontario Bob 1 0
Canada Ontario Charlie 1 0
Canada Ontario Charlie 1 0
Canada Toronto Alice 1 1
Canada Toronto Bob 0 0
组合select或:
Country -> Canada
City -> Ontario
总计:
SUM Distinct people
Car 3 2
Home 1 2
值可以重复。我们可以看到查理在安大略省(加拿大)有 1 辆车的两条线。
然后我有两个组合可以按国家和城市过滤(我将简化只考虑城市),在底部我想使用以下公式计算:
给定组合中的 selected 城市,我可以加起来有多少辆汽车(和房屋)。一旦我定义了范围,我就得到了下面的公式。即安大略省有3辆汽车,即3辆:
=IF(A15<>"All",SUMIF(RegionRange,A15,Column1Range),SUM(Column1Range))
真题。给定组合中的 selected 城市,有多少不同的人在该城市拥有汽车。即安大略省虽然有3辆车,但只有2个人(Bob和Charlie)。查看有关 how to count unique values in Excel 的问题,我可以使用以下公式,但这不会考虑组合中的过滤器:
=SUM(IF(FREQUENCY(MATCH(Column1Range,Column1Range,0),MATCH(Column1Range,Column1Range,0))>0,1))
我的问题是我可以使用什么公式来代替之前的公式来考虑组合中的过滤器。
请注意,我希望数据保持可见并更新总计,因为我 select 组合中的某些内容,所以我想要的是计算它的公式,而不是使用自动过滤器。
您可以使用这个数组公式:
=SUM(IF(($B:$B=$H)*($D:$D>0),1/COUNTIFS($C:$C,$C:$C,$D:$D,">0",$B:$B,$H)))
作为数组公式,退出编辑模式时需要用Ctrl-Shift-Enter确认,而不是回车。如果操作正确,那么 Excel 将在公式周围放置 {}
。