功能定位:为什么“按周自动汇总”成了运营刚需
2026 春季版 WPS 表格(内部版本 13.7.2)把数据透视表与动态数组函数彻底打通:把“日期列”拖进透视表,按周分组后,再用 =LET() 或 =LAMBDA() 封装成一条公式,模板即可溢出成周报表格。过去要写的 VBA 循环,现在一行公式就能解决,且支持 100 人同时在线刷新,冲突合并毫秒级——对日更 200 条商品上架记录的运营团队来说,这是肉眼可见的工时节省。
下文用“周汇总”“周报模板”等长尾词自然承接,不再重复关键词。
方案总览:三条技术路线与取舍
路线 A:透视表 + 分组 → 复制粘贴为模板
适合数据源干净、列字段固定、每周只需一张截图发群的场景;代价是每次新增数据需手动“刷新全部”,且分组后的透视表无法被 =QUERY() 直接引用,跨表公式会断层。
路线 B:动态数组函数 → 全自动溢出
适合继续把“周报”喂给图表、条件格式或 WPS AI「数据故事」模块,实现 PPT 一键配图;代价是文件必须保存为 .xlsx,旧 .et 格式不支持动态溢出,且 2026 鸿蒙 Next 版暂不支持 LAMBDA,需回退到 =SUMIFS。
路线 C:JS 宏 → 无窗口定时任务
适合企业私有云部署,把“刷新+另存 PDF+邮件推送”串成闭环;代价是需管理员在「选项→插件中心」打开「允许 JS 宏」,且 Mac 版 13.7.2 因 SIP 限制无法调用本地 Shell,需用 Windows 调度。
操作路径:桌面端最短 7 步完成路线 B
- 打开 WPS 表格,顶部菜单「数据→获取数据→从工作簿」选中原始明细表,确保日期列格式为“yyyy-mm-dd”。
- 在空白工作表 A1 输入公式:
=LET( src, 明细表!A:E, wk, MAP(TAKE(src,,1), LAMBDA(d, TEXT(d- WEEKDAY(d,2)+1,"yyyy-mm-dd"))), UNIQUE(wk) )
即可溢出每周起始日期列表。 - B1 继续写:
=BYROW(A1#, LAMBDA(w, SUMIFS(明细表!E:E, 明细表!A:A,">="&w, 明细表!A:A,"<"&w+7)))
完成销售额按周汇总。 - 选中 A:B →「插入→图表→组合图」,把折线设为“累计环比”,柱状设为“周销售额”,WPS AI 会自动弹出「数据故事」按钮,一键生成解读文本。
- 「文件→另存为→.xlsx」,关闭「兼容模式」提示;若需共享给鸿蒙 Next 同事,另存副本为
.et,并改用=SUMIFS替代=LAMBDA。 - 顶部「审阅→保护工作表」只解锁 A1 公式区域,防止协作同事误删。
- 「云文档→定时同步」打开「每周一 08:00 自动刷新」,完成。
移动端差异:Android/iPad 只能“看”不能“溢出”
截至当前版本,Android 13.7.2 与 iPadOS 版均可查看动态数组结果,但无法编辑 =LAMBDA 公式,输入时会提示“当前平台受限”。经验性观察:地铁里急需改周汇总,可切到透视表路线 A 应急——长按日期列→「更多→分组→按周」→「截图分享」,回到桌面端再替换模板。
例外与边界:哪些情况会翻车
- 日期列混有文本“2026/5/8”与“5月8日”,
=TEXT()会返回错误值,需先用「数据→分列→日期」统一格式。 - 明细表超过 50 万行,动态数组溢出在 8 GB 内存笔记本上可能出现“计算超时”弹窗;此时应回退到 Power Query(WPS 叫「获取数据」)→「分组依据」→加载到数据模型,关闭实时刷新。
- 公司电脑禁用宏策略,JS 宏路线 C 会直接灰掉;可改用「Windows 任务计划+命令行启动 wps /pt 文件.pdf」间接实现无人值守,但需 IT 放行命令行参数。
验证与观测:3 个可复现指标
| 观测点 | 预期结果 | 验证步骤 |
|---|---|---|
| 公式溢出区 | 蓝框随明细新增自动扩展 | 在明细表尾部追加 100 行,返回报表 sheet,看蓝框是否下延 100 行 |
| 刷新耗时 | 10 万行内亚秒级 | 状态栏底部「计算完成」时间戳与系统时钟比对 |
| 协作冲突 | 100 人同时编辑无提示冲突 | 邀请同事在线双击任意单元格,自己本地 F9 刷新,观察是否出现“版本已更新”横幅 |
