我正在使用 Excel 2010。下面是我的匿名数据样本。
Name Factor Nick Town
Anton 0 Anton Denver
Anton 1 Anton1 Boston
Anton 2 AntonB Miami
Anton 1 Anton1 Seattle
Bernard 0 Bernard Denver
Bernard 1 Bernie Miami
Bernard 1 Bernardo Seattle
Chuck 0 Chuck Denver
Chuck 1 Chuckee Chicago
Chuck 2 Chuckee Seattle
Chuck 2 Chucky Miami
Chuck 1 Tchuk Chicago
Chuck 2 Chuck Houston
Deborah 0 Deborah Denver
Deborah 1 Deb Miami
Deborah 2 Debbie Chicago
Deborah 3 Debbee Boston
Deborah 1 Debbie Boston
我想要的是: 对于每个在特定城镇(比如芝加哥)中提及的名称,我想要找到它们所指的所有城镇。
就像是:
在 SQL 中,我会将其表达为:
select distinct Name , town from Dist
where Name in (select Name from Dist where town='Chicago');
当我想将此列表过滤为仅包含芝加哥的名称时,就会出现问题。如果我过滤芝加哥,则会得到以下结果:
- 我尝试复制城镇字段,以便能够过滤第一个字段并显示第二个字段。但这没有奏效。
- 我尝试了在列和行之间进行各种移动,但没有成功。
- 我甚至不知道如何计算一列来达到我的目标。
如果不用数据透视表就能实现这一点,那我也可以接受。我只是觉得这样会更简单。
答案1
您需要向源数据添加辅助列。假设名称在 A 列中,城镇在 D 列中,则您的公式将是(在 E2 中):
=COUNTIF(A:A,A2,D:D,"Chicago")
这将返回1
包含芝加哥的名称,以及0
不包含芝加哥的名称。(与 SQL 中的子查询逻辑相同)
只需为您的数据透视表过滤器和过滤器添加这个新列即可1
。