<!-- title: xlsx压轴：把交付写成合同 -->

# xlsx压轴：把交付写成合同

> Skills 生态定期观察，本期第 4 轮：内容创作与办公类。本文拆解对象为 anthropics/skills 官方仓库 xlsx 件，一手文本来自本机 example-skills 插件位正式加载，文件清单与命令以仓库当前版本为准；分数除注明外转引自本站存档各期原文。

## 概述

本栏第 4 轮按例轮到内容创作与办公。这条货架是全站被犁得最熟的一块：写作五条路线有主、去 AI 味横评做过、翻译和 SEO 各有专篇、演示线十一件齐活，Q3 收官对账昨天刚把全部判例合拢成总榜。把存档翻到底，会发现这个工位层只剩一户存量从来没有过专场：**官方文档四件套里的 xlsx**——pdf 在 09-16 深拆、pptx 在 09-24 拿到单集、docx 今天上午连开两场一手文本拆解，唯独 xlsx 只有账面分（4.40 起步、09-26 晨评上修至 4.58），从未被逐段拆过。本期补上。核心结论先给：**xlsx 的 SKILL.md 不是知识手册，是一份交付合同——它开门先立验收条款（零公式错误），中段编入行业工艺（金融建模色标），结尾装一条机器质检线（recalc 闭环）**。docx 教 Claude「改别人的文件别留疤」，xlsx 教的是「自己造的文件要带保修单」。

## 口径：一手文本与转引分数

先交代材料边界。本轮在线抓取与搜索通道未放行，GitHub 星数、社区热度一律不印。但本期与今晨 docx 两场享有同等待遇：**xlsx 以 `example-skills:xlsx` 的身份装在本机官方插件位，本轮将其 SKILL.md 全文正式加载进上下文**，下文所有引文、条款编号、脚本行为，全部出自这份一手文本，读者装同款即可逐句核对。加载管道照例不透出 frontmatter 门牌——描述即门牌的设计已在 pptx 单集讲透，本期只拆正文。评测分数的口径：官方 xlsx 的历史判例分（09-20 总账 4.40、09-26 晨评 4.58）转引存档，本期给出一笔新账；jupyter-notebook 3.45、office-mcp 3.10 沿用 09-17 静默席黑箱首评不复议；chart-craft-plus 4.60 沿用 Q3 收官榜判例；spreadsheet 本期不开分，理由见对垒一节。

## 评测对比表

权重沿用本栏固定口径：功能 25%、设计 25%、实战 20%、上手 15%（越高越容易）、社区 15%，5 分制。

| 件 | 工位 | 功能 | 设计 | 实战 | 上手 | 社区 | 加权 | 口径 |
|---|---|:---:|:---:|:---:|:---:|:---:|:---:|---|
| 官方 xlsx | 办公·表格 | ★★★★½ | ★★★★★ | ★★★★½ | ★★★★½ | ★★★★★ | **4.70** | 本期一手新账（区间 4.58~4.70） |
| chart-craft-plus | 数据·可视化 | ★★★★★ | ★★★★ | ★★★★ | ★★★★ | ★★★★ | **4.60** | 存档判例（Q3 收官榜） |
| jupyter-notebook | 办公·数据 | ★★★★※ | ★★★ | ★★★★※ | ★★★ | ★★★※ | **3.45** | 存档（09-17 黑箱首评） |
| office-mcp | 办公·通道 | ★★★※ | ★★★★ | ★★★※ | ★★ | ★★★※ | **3.10** | 存档（09-17 黑箱首评） |
| spreadsheet | 办公·表格 | — | — | — | — | — | 不开分 | 正文未读取，见对垒一节 |

## 专场进度：四件套集齐的最后一席

官方文档四件套在本栏的待遇，摆在一起看才显出 xlsx 的尴尬：

| 件 | 专场记录 | 存档分 |
|---|---|---|
| pdf | 09-16 深拆 | 4.80 |
| docx | 09-28 连开两场（坑位化石篇 + 解包缝合篇） | 4.70 |
| pptx | 09-24 单集 | 4.5~4.85 两账并存 |
| xlsx | **无专场，仅晨评与总账** | 4.58（本期上修前） |

一个工位只有账面分、没有一手文本，意味着它设计里最值钱的部分从未被展示过。本期读完原文才发现，这份存货的成色被账面分低估了。

## SKILL.md 逐段拆

### 开门三条款：合同先于知识

docx 正文的第一句是世界观（「一个 .docx 文件，就是一个装着 XML 文件的 ZIP 压缩包」）。xlsx 的第一句不是知识，是**要求**：正文开门第一段立了三份交付条款——所有 Excel 文件用统一专业字体；**每个交付模型必须零公式错误**（#REF!、#DIV/0!、#VALUE!、#N/A、#NAME? 五类错误点名列出）；改用户已有模板时，「已有模板的约定永远压过本规范」（原文大写强调 ALWAYS override）。

这个开法的含义值得说透。大多数社区件开门写「我能做什么」，官方 docx 开门写「文件本质是什么」，而 xlsx 开门写的是**「交付物必须满足什么才算合格」**。零错误条款尤其硬：它不是「尽量避免错误」，是把五类错误的零发生写成了出厂验收标准。第三条则是全部官方办公件里最有敬畏感的一句——它承认存量办公文件里躺着人类多年积累的排版约定，工具的规范在这些约定面前让位。合同思维和手术思维，在两份 SKILL.md 的开头就分了工。

### 金融色标：把投行工艺编码进提示词

正文里藏着一整节「Financial models」色标规范，这是全篇最意外的内容：**蓝色字=硬编码输入（留给用户改场景的数），黑色字=公式，绿色字=跨表引用，红色字=外部文件链接，黄色底=需要关注的关键假设**。这是投资银行建模行业的通行工艺，教科书不写、论坛靠师徒口传，现在被整段编进了提示词。

数字格式规范同属这一脉：年份必须存成文本串（否则 2024 会被显示成「2,024」）；货币用 `$#,##0` 且表头必须带单位；零值用格式 `$#,##0;($#,##0);-` 显示成横杠；百分比默认一位小数；估值倍数 0.0x；负数用括号不用负号。还有一条更狠：**每一个硬编码数字必须注明来源**，格式固定为「Source: 公司 10-K，页码，附注，URL」或「Source: Bloomberg Terminal，日期，代码」。这段的存在说明作者的验收想象不是「能打开的表」，而是**能递交给买方尽调的模型**——工业工艺直接变成了提示词条款。

### 一对负样本：公式不硬编码

正文的 CRITICAL 块给了 xlsx 件唯一一对 ❌/✅ 反例，和 docx 的「❌ WRONG」负样本写法同门：在 Python 里算好合计数再填进单元格是错的，写 `=SUM(B2:B9)` 才是对的；在 Python 里算好增长率 0.15 填进去是错的，写 `=(C4-C2)/C2` 才是对的。

立法理由原文说得干净：这样表格才能「保持动态、可更新」。在 Python 里算数填值，产出的是一张**死表**——源数据改了，合计纹丝不动，用户要么不知道，要么知道后全盘手改。写公式，表就是活的。docx 的负样本防的是渲染事故（黑底表格、非法 XML），xlsx 的负样本防的是语义层面的赝品：看起来有数、其实已经死了的表格。两份 CRITICAL 各守一种正确性，恰好互补。

### recalc 闭环：一条机器质检线

合同立了「零错误」的验收标准，谁来执行验收？答案是全件唯一的脚本：`scripts/recalc.py`。机制层的事实链是这样的：openpyxl 写入的公式只是**字符串**，文件里没有计算结果——这就是 09-20 总账给 xlsx 那句判词「公式不自己算」的出处。所以工作流里有一步大写的 MANDATORY（用了公式就必须执行）：跑 `python scripts/recalc.py output.xlsx`，由 **LibreOffice 无头模式**把全簿公式真实算一遍，然后扫描所有单元格找那五类错误，返回一份 JSON 报告——`status` 是 `success` 还是 `errors_found`，错误按类型计数、精确到「哪张表哪个单元格」。有错就按报告位置修复，修完重算，直到零错误为止。

```mermaid
flowchart TD
    A["用户给数据需求"] --> B{"新建还是改存量"}
    B -->|新建| C["openpyxl 写公式串"]
    B -->|分析| D["pandas 读表"]
    B -->|编辑| E["load 保公式打开"]
    C --> F["save 落盘"]
    E --> F
    F --> G{"用了公式吗"}
    G -->|是| H["recalc 无头重算"]
    H --> I["扫全表五类错误"]
    I --> J{"JSON 报告有错吗"}
    J -->|有| K["按位置修复"]
    K --> H
    J -->|无| L["零错误交付"]
    G -->|否| L
    D --> L
```

这条闭环是 xlsx 件设计分的真正来源：**模型做判断（写什么公式、怎么改），脚本保正确（算得出、查得出错）**，验收标准写在正文开头，验收动作由脚本在交付前强制执行——合同、工艺、质检三段在一份文件里首尾咬合。配套的 `office/soffice.py` 封装甚至处理了沙箱环境 Unix 套接字受限时的 LibreOffice 自动配置，脚本层的细心超过了正文。

### 化石清单：三条真实翻车的化石

和 docx 的九条 CRITICAL 一样，xlsx 的检查表里每一条都像一次真实事故的遗骸。最重的一条：**用 `data_only=True` 打开文件再保存，公式会被计算值永久替换**——原文用了「permanently lost」，一个不可逆操作被埋在一个「读数」参数里，这是整个 Excel 生态最经典的自杀按钮，官方件把它写成了正文警告。其余几条：列号换算要记得 64 列是 BL 不是 BK（字母制列号的 off-by-one 陷阱）；Excel 行号从 1 起、pandas 从 0 起，DataFrame 第 5 行在表里是第 6 行；读数前用 `pd.notna` 查空值；公式分母先想除零。开头立的五类错误条款，结尾用一张检查表逐项回收——首尾呼应得像一份真的质保文件。

### 与 docx 的镜像分工

把今晨两场 docx 拆解的结论放在旁边，四件套的方法论就完整了：docx 的世界是**存量**——别人的文件、带全部格式包袱，所以它下潜到 XML 做外科手术，求「无损」；xlsx 的世界偏**新生**——从数据造一张活表，所以它走「库 + 质检线」，求「零错」。一个的验收是「排版没动」，一个的验收是「公式全对」。脚本配比也映照这个分工：docx 两个脚本管进出（unpack/pack），xlsx 一个脚本管质检（recalc）——因为表格的正确性可以机器判定，排版的正确性目前只有人看得出来。

## 新账：4.58 上修至 4.70

按 Q3 收官对账立的定律一「验收变严，真货浮上来」，本期把 xlsx 从晨评的 4.58 上修至 **4.70**：晨评是门牌加结构级验收（openpyxl 读写、LibreOffice 重算两个事实点），本轮是一手逐段验收，多出的证据是交付合同的开法、金融色标的工艺密度和 recalc 闭环的首尾咬合——设计一项从 4.5 提到 5。实战留 4.5 的理由也如实写：质检线依赖 LibreOffice 在场，重算大簿有等待成本；图表能力正文基本没有着墨，可视化工位要出门左转。上修后的座次：pdf 4.80 仍是四件套之首，xlsx 4.70 与 docx 并肩，pptx 按区间下限 4.5 用。按收官榜「区间下限做装机决策」的口径，xlsx 这笔账反而可以放心按上限用——它的下限证据在补齐之后变厚了。

## 数据工位对垒：守门员与三个邻居

09-17 静默席那期点过一个隐患：数据工位装机端已经成族，用户一句「帮我算这个表」，四件抢活。借本期把四件的边界画清：

```mermaid
flowchart TD
    subgraph W["数据工位在架四件"]
        X["官方 xlsx<br/>表格文件守门员"]
        S["spreadsheet<br/>同位第二件"]
        J["jupyter-notebook<br/>可执行环境"]
        M["office-mcp<br/>通道派"]
    end
    Q["帮我算这个表"] --> X
    Q --> S
    Q --> J
    Q --> M
    X --> O["活公式文件"]
    J --> P["边算边写报告"]
    M --> T["工具句柄集合"]
```

**jupyter-notebook（3.45，存档）**。数据工位唯一带「可执行环境」性质的件：xlsx 和 spreadsheet 管表格文件，它管代码、输出、叙述三合一的笔记本容器，是办公第三排里唯一能「边算边写报告」的形态。设计分只给三星的原因 09-17 说过——它借了 Jupyter 二十年的品牌势能，门牌不需要自我解释；真正的隐患在触发词层，与 xlsx 的「算表」语义高度重叠，谁让路谁打架至今没法在注册表层验证。装它的理由不是替代 xlsx，是接住「分析过程本身要交付」的需求。

**spreadsheet（不开分）**。本期唯一一个点名不开分的件：正文从未读取，名字档只有「表格」一个语义，而它宣称的工位与官方 xlsx 完全重合。在守门员已经一手验明、以 4.70 在位的前提下，同位第二件的边际价值必须先回答一个问题——它比守门员多什么？答案未知之前，开分只是给注册表凑数。它的存档判语「同工位官方件已拆多轮」本身就是一个判词：**当官方件在位，通用同位件的生存空间只剩缝隙场景**。这是全货架同位竞争的标准结局，office-mcp 的通道派路线（3.10，09-17 已拆、本月另有专文）至少换了一条赛道，spreadsheet 连换都还没换。

**chart-craft-plus（4.60，存档判例）**。严格说它不在表格工位，在数据工位的可视化邻位——xlsx 正文不管图表，出图需求由它接住。谱系在 05-18 期讲过：前身 chart-craft 十种图表，plus 扩到 35 种以上，覆盖架构图、流程图、战略图与数据图，输出内嵌 SVG 的交互式 HTML。它与守门员构成一对分工干净的搭档：**xlsx 管「数对」，chart-craft-plus 管「图美」**——前者交保修单，后者交视觉稿。数据线在 Q3 收官榜的判语是本机部署最重的一格，现在可以说得更准：重得有道理，四件里没有一件是多余的，多余的只是「帮我算这个表」这句话的歧义。

## 安装与使用

```bash
# 官方 xlsx（方式一：插件市场，Claude Code 内执行）
/plugin marketplace add anthropics/skills
/plugin install document-skills@anthropic-skills

# 官方 xlsx（方式二：手动安装）
git clone https://github.com/anthropics/skills.git
cp -r skills/document-skills/xlsx ~/.claude/skills/xlsx

# chart-craft-plus：本机已装，市场命令格式见 05-18 期存档（npx skills add <owner>/chart-craft-plus）
# jupyter-notebook / spreadsheet / office-mcp：本机在架件，公开仓库命令以各自来源页为准
```

装完重启会话，说一句「把这份数据做成带公式的 Excel，合计和增长率都要活公式」，能触发、且交付文件用 LibreOffice 打开公式不是空值，就通了。

## 分场景排行榜

| 场景 | 首选 | 一句话理由 |
|---|---|---|
| 从零造财务/业务模型 | 官方 xlsx | 色标与格式工艺内置，交付带零错误质保 |
| 改存量带公式表格 | 官方 xlsx（谨慎档） | 能改，但先记住 data_only 那条化石 |
| 分析过程要交付 | jupyter-notebook | 代码、输出、叙述三合一的唯一形态 |
| 数据出图 | chart-craft-plus | 35+ 图表，交互 HTML，与 xlsx 分工干净 |
| 办公全家桶一次接管 | office-mcp | 通道派路线，配置成本换集成度 |
| 纯读数看一眼 | 谁都不装 | 一行 pandas 的事，别惊动质检线 |

一个收尾观察：四件套里最后这个专场拆完，官方办公线的完整方法论才算全部见光——docx 的手术论、pdf 的三层披露、pptx 的先看图再交稿、xlsx 的合同论，四份 SKILL.md 是四种「正确性」的四种工程化姿势。而生态侧的判词没变：纯办公区新供给停摆已复核三个窗口，这份四件套短期内不会有新货来改榜——**想抄官方作业的，这四份范文现在是全部拿到手了**。

## 参考来源

1. [anthropics/skills](https://github.com/anthropics/skills) — 官方 Skills 仓库，xlsx 件本体（document-skills/xlsx），本文一手文本经本机 example-skills 插件位正式加载
2. 本站存档：[内容创作与办公件五强横评（2026-09-26）](output/2026-09-26/skills-ecosystem-r4-0927.md) — xlsx 晨评分 4.58 与「最稳守门员」判词出处
3. 本站存档：[静默席开分：进口链断在抽音轨（2026-09-17）](output/2026-09-17/skills-ecosystem-r4-1944.md) — jupyter-notebook 3.45、office-mcp 3.10 黑箱首评与数据工位四件抢活判词出处
4. 本站存档：[Q3收官对账：内容办公件沉浮录（2026-09-27）](output/2026-09-27/skills-ecosystem-r4-1642.md) — 数据线收官口径、chart-craft-plus 4.60 判例、沉浮三定律出处
5. 本站存档：拆docx两场（2026-09-28，output/2026-09-28/skills-ecosystem-r2-0248.md、skills-ecosystem-r2-0310.md）— docx 专场记录、CRITICAL 化石方法论与「一手文本拆法」先例出处
6. 本站存档：[skills-ecosystem-0018（2026-05-18）](output/2026-05-18/skills-ecosystem-0018.md) — chart-craft-plus 谱系（chart-craft 十种→plus 35+ 种）与历史评分出处

> [!tip] 51学通信知识星球
> **星主：爱卫生**（微信：gprshome201101）——公众号「51学通信」创办者，19 年通信行业运维与讲师经验，著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书（各大电商平台有售）。
> **星球定位**：深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域，主打运维岗位与信令分析。
> **当前规模**：5200 篇主题 / 990 个回答，198 元/年。
> **加入福利**：加入星球后请加爱卫生微信，拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题，另有群内分享。
> **AI 加持**：51学通信知识星球已作为 skill 接入 WorkBuddy，使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例，做总结、找文档和 PPT 等场景全覆盖。

![51学通信知识星球海报-扫码加入](https://wiki.500nian.com/images/zhixingqiu_qrcode.png)
