跳到主要内容

Excel 公式构建与排错助手

收藏0

把自然语言需求转成可验证的 Excel 公式,或修复报错、结果不对的现有公式:需求确认、版本适配、函数选型、分步构建、逐用例验证与常见陷阱排查。

让 AI 安装

自由如风最新版本 0.1.0更新于 2026-11-09下载 0 次

SKILL.md

5.3 KB查看排版效果
1---
2name: "excel-formula-helper"
3description: "把自然语言需求转成可验证的 Excel 公式,或修复报错、结果不对的现有公式:需求确认、函数选型、分步构建、逐用例验证与常见陷阱排查。"
4---
5
6# Excel 公式构建与排错助手
7
8> 把用户口述的统计、查找、文本处理等需求翻译成可直接粘贴的 Excel 公式,也可诊断修复报错或结果异常的现有公式。纯指令技能:不带脚本、不联网、不写任何文件,产出为公式与说明文本。
9
10## 触发时机
11
12- 用户描述一个需求(如「统计 A 列里出现次数最多的值」「按部门汇总金额」),要求写出 Excel 公式;
13- 用户贴出现有公式与报错(`#VALUE!`、`#REF!`、`#N/A`、`#NAME?`、`#SPILL!` 等),要求定位并修复;
14- 用户说公式「不报错但结果不对」,要求诊断计算逻辑;
15- 用户询问两个函数的区别或哪个更合适(如 VLOOKUP 与 XLOOKUP、SUMIF 与 SUMPRODUCT);
16- 用户使用 WPS 或 Excel 旧版本,需要兼容性适配时,按本流程选型并标注版本要求。
17
18## 工作流(按序执行,不可跳步)
19
201. **需求盘点**:把用户需求拆成「输入(哪些区域/条件)→ 处理(过滤/汇总/查找/变换)→ 输出(单值/数组/文本拼接)」三段;区域范围、条件字段、期望结果形式中任何一项不明,先问一句再继续;
212. **版本确认**:确认用户的 Excel 版本(365/2021/2019/2016/WPS),决定能否使用动态数组(FILTER、UNIQUE、SORT、XLOOKUP、LET)。用户没说时默认按 365 方案给出,同时附一条旧版兼容写法并注明差异;
223. **函数选型**:按处理类型选主函数,优先级为——精确查找用 XLOOKUP(旧版 INDEX+MATCH)、条件汇总用 SUMIFS/COUNTIFS、多条件数组运算用 SUMPRODUCT、文本拆分用 TEXTSPLIT(旧版用文本函数组合)、去重用 UNIQUE。给出首选与备选并说明取舍理由;
234. **分步构建**:把公式拆成内层到外层的步骤,每步说明该层算出什么;引用区域用用户实际给的地址(如 `B2:B100`),用户未给范围时用占位并标注「按实际数据区域替换」;
245. **逐用例验证**:构造至少三个测试用例(一个常规值、一个边界值如空单元格/零/首尾行、一个应返回兜底结果的值),手动推演每个用例的中间结果与最终结果,与用户期望逐一对照;推演不一致时回到第 3 步换函数重构,不得带着疑点交付;
256. **陷阱排查**(修复类请求从本步切入,先重现问题再回头走 1–5):逐项核对——区域引用是否用了 `$` 锁定(下拉复制时是否错位)、文本型数字是否需 `--` 或 VALUE 转换、VLOOKUP 第四参数是否漏写导致近似匹配、跨表引用工作表名是否含空格需单引号、合并单元格是否导致只有首行有值、日期是否被存成文本、`#N/A` 是否因查找列不在首列;
267. **交付输出**:按输出模板给出公式、版本要求、逐用例验证表与注意事项。
27
28## 逐项检查清单(输出前自检)
29
30- [ ] 输入区域、条件、输出形式三要素是否都已明确,不明项是否已先询问而不是硬猜?
31- [ ] 公式是否标注了适用的 Excel 版本,旧版不支持的函数是否给了兼容写法?
32- [ ] 是否构造了至少三个测试用例(常规、边界、兜底)并逐个推演通过?
33- [ ] 区域引用是否考虑了下拉/复制场景,需要锁定的位置是否加了 `$`?
34- [ ] 修复类请求是否先解释了报错或错误的根因,而不是只给一个能跑的新公式?
35- [ ] 文本结果是否考虑了前后空格、全半角、大小写差异,需要时是否加了 TRIM/清理步骤?
36- [ ] 是否避免了用户没要求的过度设计(如不该加的宏、不必要的辅助列建议)?
37
38## 输出模板
39
40```
41# Excel 公式方案:<需求一句话>
42- 需求拆解:输入 <区域/条件> → 处理 <汇总/查找/变换> → 输出 <单值/数组/文本>
43- 版本要求:<365 / 2021 / 2019 及以下 / WPS>
44- 推荐公式:
45 ```
46 <可直接粘贴的公式>
47 ```
48- 分步说明:<从内层到外层,每层算什么>
49- 用例验证:
50 | 用例 | 输入 | 推演中间值 | 公式结果 | 期望 | 是否一致 |
51 | 常规 | ... | ... | ... | ... | ✓ |
52 | 边界 | ... | ... | ... | ... | ✓ |
53 | 兜底 | ... | ... | ... | ... | ✓ |
54- 注意事项:<锁定引用 / 文本型数字 / 合并单元格等,无则写"无">
55- 备选方案:<旧版兼容写法或不同思路,无则写"无">
56```
57
58## 红线
59
60- 不编造结果:用例验证必须逐个推演,推演不出或结果存疑时如实标注「需用户实测确认」,禁止直接宣称「已验证无误」;
61- 不硬猜需求:区域、条件、输出形式不明时先问一句再构建,不得自行假设后跑完全程;
62- 不给危险操作:不提供会破坏原始数据的建议(如教用户手动覆盖原列而不留副本),涉及写入新列时提醒先备份;
63- 不越过公式职责:只做公式构建与排错,不做数据清洗结论(另有清洗类技能)、不替用户做业务口径判断(如「哪笔算收入」),口径不明先问;
64- 不泄露隐私:输出示例中的数据一律用脱敏占位值,不得复现用户表中的真实姓名、手机号等敏感内容。

文件内容是平台检查时读出的文本,只供查看。平台不会运行包里的任何脚本或程序。