关于 deck-refresh
Deck Refresh 用于更新现有演示文稿中的数值,同时保留原有格式。它会查找每个数值的不同写法,先提交修改计划供确认,再编辑并检查受影响的页面。
主要功能
- 01查找文稿中的数值变体
- 02检查文本、表格、图表和备注
- 03编辑前提交修改计划
- 04保留现有格式
- 05视觉检查已修改页面
适用场景
- 01更新演示文稿中的财务数据
- 02跨多页替换数值
- 03更新后核对图表数据与标签
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ anthropics/ financial-services --skill deck-refresh安装后在 Claude Code 中输入/deck-refresh确认已加载。
详细介绍
演示文稿刷新
更新演示文稿中的数字。演示文稿是格式的唯一依据;你只改数值。
环境检查
此技能在 PowerPoint 加载项和聊天中均可使用。开始前先确认你在哪种环境中 —— 编辑机制不同,但意图相同:
- 加载项 —— 演示文稿处于打开状态;直接编辑文本段、表格单元格和图表数据。
- 聊天 —— 演示文稿是上传的文件;通过用新数值重新生成受影响的幻灯片,并把结果写回文件来编辑。
无论哪种方式:改动越小越好,保留现有格式不动。
这是一个四阶段流程,第三阶段是审批关口。在用户看过计划之前不要编辑。
阶段 1 —— 获取数据
用 ask_user_question 了解新数值是如何传入的:
- 粘贴的映射 —— 用户输入或粘贴 "revenue $485M → $512M, EBITDA $120M → $135M."。最清晰的情况。
- 上传的 Excel —— 有旧值/新值列,或用户想从中提取的新输出表。先读取,在信任它之前确认哪一列是哪一列。
- 只有新数值 —— "Q4 revenue was $512M, margins were 22%."。由你判断每个数值替换的是什么。可行,但在动手之前确认映射关系 —— 一个被你映射到 revenue 但用户本意是 gross profit 的 "$512M" 是一场无声的灾难。
还要询问派生数字:如果 revenue 变动,用户是希望重新计算增长率和占比,还是保持不变?大多数演示文稿里某处都埋着一个如今已经过时的 "+15% YoY"。是否改动这些应由用户来判断,而不是你。
阶段 2 —— 全部读取,全部查找
读取每一张幻灯片。对每个旧数值,找出它的每一处出现 —— 包括那些看起来不一样的:
| 变体 | 示例 |
|---|---|
| 量级 | $485M、$0.485B、$485,000,000 |
| 精度 | $485M、$485.0M、~$485M |
| 单位写法 | $485M、$485MM、$485 million、485M |
| 内嵌 | "revenue grew to $485M"、"a $485M business"、坐标轴标签 |
一份演示文稿在第 3 张幻灯片上写着 $485M,在第 8 张的图表坐标轴上写着 485,在第 15 张的脚注里写着 $485.0 million,这就是同一个数字的三处出现。查找替换会漏掉其中两处。你不该漏。
数字藏身之处:
- 文本框(显而易见)
- 表格单元格
- 图表数据标签和坐标轴标签
- 图表源数据 —— 驱动柱形的数字,而不只是柱形上的标签
- 脚注、来源行、小字
- 演讲者备注,如果用户在意这些
建立一份清单:对每个旧数值,列出它出现的每一处位置、它出现时的确切文本,以及它将变成什么。这份清单就是计划。
阶段 3 —— 展示计划,获取批准
这是对某人花时间做出来的演示文稿的破坏性操作。 在编辑任何内容之前,先展示完整的变更清单。格式要便于快速浏览:
$485M → $512M (Revenue)
Slide 3 — Title box: "Revenue grew to $485M"
Slide 8 — Chart axis label: "485"
Slide 15 — Footnote: "$485.0 million in FY24 revenue"
$120M → $135M (Adj. EBITDA)
Slide 3 — Table cell
Slide 11 — Body text: "$120M of Adj. EBITDA"
FLAGGED — possibly derived, not in your mapping:
Slide 3 — "+15% YoY" (growth rate — stale if base year didn't change?)
Slide 7 — "12% market share" (was this computed from $485M / market size?)
标记出的部分很重要。你不只是在执行查找替换 —— 你是在捕捉用户在晚上 11 点会漏掉的二阶影响。如果映射写的是 $485M → $512M,而第 3 张幻灯片紧接着还有 +15% YoY,这个增长率现在很可能就是错的。标记出来;不要悄悄改掉,也不要悄悄放过。
用 ask_user_question 来获取批准:按所示继续、继续但跳过标记项,或让他们先修改映射。
阶段 4 — 执行、保留、汇报
对于每一处更改,做能完成它的最小编辑。具体如何操作取决于你的环境:
- 加载项 — 直接在实时演示文稿中编辑具体的文本框、单元格或图表系列。
- 对话 — 用新值就地重新生成受影响的幻灯片,其他所有元素都完全保持原样,然后写回文件。
无论哪种方式,标准都一样:
- 形状中的文本 — 只改数值,字体、字号、颜色、加粗状态一律保持原样。如果
$485M在句中为 14pt 深蓝色加粗,那么$512M也应为同一句中的 14pt 深蓝色加粗。 - 表格单元格 — 只改单元格,不动表格。
- 图表数据 — 更新底层系列值,让柱形或折线真正发生变化。只改标签而不改数据,会让图表说谎。
不要重排任何你本不需要触碰的内容。演示文稿现有的样式在定义上就是正确的;你是外科医生,不是翻新工。
完成最后一次编辑后,汇报实际发生的情况:
Updated 11 values across 8 slides.
Changed:
[the list from Phase 3, now past-tense]
Still flagged — did NOT change:
Slide 3 — "+15% YoY" (derived; confirm separately)
Slide 7 — "12% market share"
对每一张编辑过的幻灯片执行标准的视觉检查。一个变长的数值($485M → $1,205M)现在可能溢出其文本框,或撑宽表格列。要在用户发现之前先抓到它。
你不做的事
- 不重建幻灯片 — 如果某张幻灯片的叙述在新的数字下已不再成立(“利润率被压缩”,但利润率其实上升了),标记出来,不要改写它。
- 未经要求不重新计算 — 派生数字由用户决定。你在阶段 1 的提问已涵盖这一点。
- 不碰格式 — 如果演示文稿使用
$MM,而用户的映射写的是$M,以演示文稿为准,而不是映射。数值可变;样式不变。