夜雨聆风学习资料网

ARTICLE · 1010891

Excel - 透视表的筛选陷阱

Excel - 透视表的筛选陷阱

下面是我自己遇到的真实的一个情况,我们来看一下这组数据。

date

是否包含

金额

2023/1/1

是

100

2023/1/2

是

200

2023/1/3

否

300

2023/1/4

否

400

2024/1/5

否

500

比如上面是我2023年的数据,是否包含就是说数据是否要呈现,是就是要呈现,否就是过滤掉。

首先肯定是建超级表

超级表的好处是什么,我每周数据更新后,不用重新选取数范围,透视表会自动选取所有数据。

然后你建透视表的时候可以看到范围是超级表,不是像A1:C6这样一个固定范围了

然后建一个透视表,做筛选,非常简单,都是基础的操作

当跨年的时候我只要把2024年的数据贴进去,然后整个Excel刷新,那么是不是透视表以及对应报表都会自动更新了。

把数据更新一下,然后点击刷新,或者右键透视表刷新都行

看起来相当完美,我们要做的事情就是更新数据源。

但是这里有个陷阱。

我来改下2024年的数据

然后再刷新

现在是什么结果,当你的数据源没有你之前筛选的值的时候,筛选会自动变成别的值

我们再把是否包含改成其它值得。

可以看到当找不到“是”的时候,会自动选择第一个值。

那这个是我们想要的吗?肯定不是了,我现在是五行数据,一个透视表,你很容易看出来问题。但是真正的报表起码有成千上万行的数据,并且透视表起码有三五个甚至十几个。那个时候你能及时发现吗?

而且一旦选择其它值之后,你再出现原来的筛选项也不会变回去了

也就是说数据不会自动修正,随着时间推移只会错得越来越离谱。

总结一下,这种问题一般我觉得是出现在跨年或者说数据全部替换的情况下。而且筛选的值没有在第一次的替换中出现的。

那怎么解决呢。我能想到的方法就是用Power Query

1.首先在创建超级表后,到数据菜单下,把数据导入Power Query.

2.在Power Query中对列做筛选

最后把数据导出

你导出的时候可以直接选择透视表

可以看到金额是3000

我们去把数据源改一下

然后再刷新透视表

现在金额是空了。

那么这样就可以很好的避开刚刚遇到的那个问题。

你可以看到你平时工作中会不会有类似的问题需要注意。

相关学习资料