前面几篇讲的是把很多行压缩成一个数的公式:SUMIF、SUMIFS 回答“整张表里符合条件的加起来是多少”。它们的问题在于 一格只回答一个问题。假如销售明细里有 6 种商品、12 个月,你要交出一张“商品 × 月份”的汇总表,就得写 72 个公式,漏一个、抄错一个都很难发现。

数据透视表把这件事反过来做:你不写公式,只告诉 Excel 按哪一列分类、对哪一列算数,它自己把这张交叉表排出来。

数据源和起点

假设明细表长这样,字段名在第 1 行:

日期商品销售员数量金额
3月1日台灯张三2120
3月1日键盘李四189
4月2日台灯张三3180

做法是:选中数据源里任意一格 → 插入 → 数据透视表 → 确认区域(一定要把第 1 行的字段名框进去)→ 选放置位置(选“新工作表”最省事)→ 确定。右侧会出现字段列表,上方有四个框:筛选、列、行、值。

四个区域各放什么

这四个框可以理解成两个角色:行和列决定“怎么切”,值决定“切完算什么”。

  • 行:希望每一 行 代表什么。把“商品”拖进去,就每种商品占一行。
  • 列:希望每一 列 代表什么。把“月份”拖进去,就每个月占一列。不拖也行——只拖行和值,得到的是一张一维清单,效果和一堆 SUMIF 差不多;加上列,才变成 SUMIF 写起来最费劲的那张二维交叉表。
  • 值:要参与计算的数字列(数量、金额)。求和、计数都发生在这个框里,所以这里 必须放数字列,放“商品”这种文字列没有意义。
  • 筛选:放在这里 不参与排布,而是给整张表加一个下拉过滤器。比如把“销售员”拖进去选“张三”,表里就只剩张三的汇总,行合计、总合计也跟着变。

放错位置不用慌:把字段从框里拖出去、或拖到另一个框,表立刻重排。

值区域为什么常常显示“计数项”

这是最容易丢分的地方。关键在于:Excel 在你把一个字段拖进“值”区域的那一刻,就要决定用哪种汇总方式,而它的默认规则只有两条 1:

  1. 这一列 全部是数字 → 用 求和;
  2. 这一列里 只要有一个空白、文本或错误值 → 用 计数。

“计数”算的是这一组里“填了内容的有几行”,效果等同于 COUNTA 1。所以如果“金额”列里有某条记录没填金额(空白),或者某个金额是从别处粘过来的、被当成文本存放,整列就会被判成非数字,你拖进去看到的就是“计数项:金额”。

危险在于它 不报错。单元格里出现 3、5 这样的数,格式也对,但含义是“3 条记录”,不是“3 元”。这里有个好用的自查信号:汇总结果比明细里任何单独一条都小,多半就是把计数当成了求和。

改成求和的办法:在透视表里双击那个“计数项:金额”的表头(或右键 → 值字段设置),在“值汇总依据”里选 求和,确定 2,表头会变成“求和项:金额”。同一个对话框里还能设数字格式;如果要把标题里的“求和项:”前缀去掉,直接删成和源数据同名的“金额”会被 Excel 拒绝,末尾加一个空格再回车即可 6。

从根上预防:建透视表之前先把那一列清干净——空单元格补 0、文本型数字转回数字、公式错误值用 IFERROR 兜住 3。但要注意:即使事后把源数据清干净了,已经生成的“计数项”也不会自己变回求和项,因为汇总方式是在字段加进值区域那一刻定下的,必须手动改一次 3。

源数据改了,为什么透视表不动

因为 数据透视表不是公式,它和源数据之间没有实时连线。创建的时候,Excel 把源数据整块复制了一份存进“缓存”,你之后看到的所有数字都来自这份副本,副本不会自己更新。这带来两条不同的处理路线:

改动发生在原来的区域内(把某个金额从 100 改成 200、删掉一行、改一个商品名):点一下透视表里的任意位置 →“数据透视表分析” → 刷新(快捷键 Alt+F5)4。它会重读一遍整块数据。

新增的行加在原来区域的下面(原本框到第 50 行,现在第 51 行又输了 5 条记录):光刷新没用,那些行根本不在数据源范围里。这时要用“更改数据源”,把区域重新框到包含新行的位置 5。

一劳永逸的办法:点源数据里任意一格,按 Ctrl+T 转成“表格”(确认勾选“表包含标题”),再用它建透视表。以后在表格下方接着输数据,Excel 会把新行自动算进表格范围,这时 只需要刷新,不用每次改区域 5。

还要留意版本差异:较新的 Excel 对本地工作簿数据源默认打开“数据源更改时自动刷新”,但旧版本、以及不同考试机器上不一定生效 4。最保险的习惯是 改完源数据顺手按一次 Alt+F5。

和 SUMIFS 怎么选

  • 题目要求把结果放在某个指定单元格、或者明确要求用函数 → 用 SUMIFS。
  • 题目要求“生成一张汇总表”“用数据透视表统计” → 用透视表。
  • 数据之后还会被反复修改 → 公式会自动重算,省心;透视表记得刷新。
  • 需要临时换角度看 → 透视表占优:把“商品”从行拖到筛选、把“月份”拖到行,一秒换一张表;SUMIFS 得重写公式。

排查清单

拿到一张“结果不对劲”的透视表,按这个顺序看:

  1. 值的表头写着“计数项”→ 双击它,把汇总依据改成求和。
  2. 汇总数比明细里单条记录还小 → 大概率是计数当成了求和。
  3. 源数据改过但表没变化 → 先刷新;如果改的是新增行,再检查是不是要更改数据源。