如何不删除原表格数据、不使用数据透视表仅选取部分数据生成图表
解决方案
方案1:动态数组筛选辅助区(适用Excel 365/2021、WPS 2021及以上版本)
这是操作成本最低的方案,辅助区数据会随源数据自动更新,完全不影响原有表格的关联逻辑:
- 找表格外的空白单元格(例如D1)输入筛选公式:
=FILTER(A2:B6,B2:B6>=4,"无符合条件数据"),公式会自动溢出生成仅包含年龄≥4岁的宠物数据 - 如果你的源数据后续会新增行,可以把公式调整为支持动态扩展的版本:
=FILTER(A:B,(B:B>=4)*(A:A<>"")*(ROW(A:A)>1),"无符合条件数据") - 直接用生成的筛选区域作为数据源创建图表即可,后续源数据修改、新增行时,筛选结果和图表都会自动同步,不需要手动调整
方案2:定义名称实现无辅助区动态图表(不想新增表格内容时使用)
如果不愿意在现有表格里新增辅助区域,可以通过定义名称直接让图表读取筛选后的数据源:
- 按快捷键
Ctrl+F3打开名称管理器,分别新建两个自定义名称:- 名称1:
筛选后宠物名,引用位置输入:=FILTER(Sheet1!$A$2:$A$6,Sheet1!$B$2:$B$6>=4)(把Sheet1替换为你的工作表名称) - 名称2:
筛选后年龄,引用位置输入:=FILTER(Sheet1!$B$2:$B$6,Sheet1!$B$2:$B$6>=4)
- 名称1:
- 插入你需要的图表类型(如柱状图、条形图),手动添加数据系列:
- 系列值输入:
=你的工作表名!筛选后年龄 - 水平轴标签输入:
=你的工作表名!筛选后宠物名
- 系列值输入:
- 确认后图表就只会展示符合筛选条件的数据,同样支持自动同步源数据更新
方案3:旧版Office兼容方案(无FILTER动态数组功能时使用)
如果使用的是没有动态数组功能的旧版Excel/WPS,可以用高级筛选生成可刷新的筛选区域:
- 先在空白区域设置筛选条件:C1单元格输入表头
age,C2单元格输入>=4 - 选中源数据区域,点击「数据」选项卡-「高级筛选」,选择「将筛选结果复制到其他位置」,条件区域选择刚才设置的C1:C2,复制到选择空白区域的起始单元格,点击确认即可生成筛选后的数据
- 后续源数据更新时,重新执行一次高级筛选即可刷新结果
内容的提问来源于stack exchange,提问作者Cauder
相关产品推荐
相关产品推荐

