过去我几乎离不开 XLOOKUP。它能从一个表里快速查找并匹配另一张表的信息,是我最常用的 Excel 函数之一。但工作簿越做越大,我发现为了做报表,自己的表格里被塞进了一堆查询列和公式。后来改用 Power Pivot 连接数据,我才意识到:有些场景根本不需要 XLOOKUP。 Power Pivot 是 Excel for Microsoft 365 以及 Excel 2016 或更高版本 Windows 桌面版提供的功能。网页版 Excel 不支持它。如果你使用的是支持的桌面版本,却看不到 Power Pivot 选项卡,可以按照下面的步骤开启:点击“文件”>“选项”>“加载项”,在“管理”下拉框中选择“COM 加载项”,点击“转到”,然后勾选“Microsoft Power Pivot for Excel”。 我的个人记账工作簿一开始就有三张彼此独立的数据表。交易记录表存放每一笔消费,包括日期、金额、CategoryID 和 AccountID;类别表存放“餐饮”“交通”“娱乐”等分类名称,通过 CategoryID 和交易记录表关联;账户表存放“活期”“信用卡”等账户信息,通过 AccountID 关联回交易记录。 这种拆分很合理:类别名称只需要保存一次,不用在几千条交易中重复出现;每笔交易也只需要记录一个账户 ID。真正的问题出现在我想做报表的时候——Excel 需要一种方式,把交易记录与另外两张表里的信息连接起来。 我最初想到的解法是 XLOOKUP。为了在报表中显示类别名称,我在交易记录表里加了一列公式,从类别表里查询;为了显示账户名称,我又加了一列公式,从账户表里查询。只要报表里需要展示一个新字段,我就可能再增加一列辅助查询。时间一长,工作簿体积变大,公式越堆越多,文件打开和计算的速度也越来越慢。 Power Pivot 提供了一种更简洁的思路。它不需要你在交易记录表里添加大量辅助列,而是直接在数据模型中建立表与表之间的关系。我用 CategoryID 把交易记录表和类别表关联起来,用 AccountID 把交易记录表和账户表关联起来,之后就可以在数据透视表里直接同时使用“交易金额”“类别名称”“账户名称”,完全不需要写 XLOOKUP。 对现在的我来说,XLOOKUP 依然是日常数据查询的好工具,但当数据量大、表格多、报表需求频繁时,Power Pivot 更像数据库思维的正确打开方式:减少辅助列、控制文件体积,也少了很多公式出错的机会。

打开网易新闻 查看精彩图片