Excel:如何在Pivot Table中筛选不含特定值的条目
筛选无特定设备的房间(数据透视表实现方案)
直接用透视表的设备筛选排除TV没用,因为只要房间有其他设备记录,就会被留在结果里。要筛选的是完全没有TV记录的房间,给你几个实用的解决办法:
方法一:辅助列+透视表筛选
- 在原数据右侧加一列,命名为「是否含TV」,输入公式:
=COUNTIFS($A$2:$A$12,A2,$B$2:$B$12,"TV")>0,按回车后下拉填充。公式会自动判断当前房间是否有TV记录,返回TRUE(有TV)或FALSE(无TV)。 - 插入数据透视表,把「房间编号」拖到行区域,「是否含TV」拖到筛选器区域,在筛选器里勾选
FALSE,就能得到102、104这类无TV的房间。
方法二:数据透视表值筛选法
- 插入数据透视表,将「房间编号」拖到行区域,「设备」拖到值区域,点击值区域的「设备」字段,选择「值字段设置」,把汇总方式改成「计数」。
- 再把「设备」拖到筛选器区域,在筛选器里只勾选「TV」,此时透视表会显示每个房间的TV记录数。
- 点击透视表的「行标签」下拉按钮,选择「值筛选」→「等于」,输入
0并确认,就能筛选出完全没有TV的房间。
方法三:Power Query批量处理(适合大数据量)
- 选中原始数据区域,点击「数据」选项卡→「从表格/区域」,导入Power Query编辑器。
- 点击「转换」选项卡→「分组依据」,分组列选「房间编号」,新列名设为「设备列表」,操作选「所有行」,点击确定。
- 点击「添加列」→「自定义列」,输入公式:
=not List.Contains([设备列表][设备], "TV"),生成新列后,筛选该列值为TRUE的行。 - 删除「设备列表」和自定义列以外的多余列,只保留「房间编号」,点击「关闭并上载」,得到的结果就是无TV的房间列表,之后可以直接用这个列表做透视表。
内容的提问来源于stack exchange,提问作者user3578602
相关产品推荐
相关产品推荐

