SuperAPI AI 工具集

kimi-xlsx

办公与效率

查看项目

更新于 10-16 08:52

技能介绍

用途

kimi-xlsx 是一个面向电子表格文件的高级操作、分析与创建工具,主要处理 XLSX、XLSM、CSV 等格式。其核心目标是最终交付一个或多个 Excel 文件,且交付物中必须包含 .xlsx 文件。

主要能力

  • Excel 文件创建:使用 Python 3 配合 openpyxl(负责文件创建、样式、公式)与 pandas(负责数据处理后经 openpyxl 导出),通过 ipython 工具执行 Python 代码。
  • 校验与错误检查:提供 KimiXlsx 命令行工具,包含 recheck、reference-check(别名 refcheck)、inspect、pivot、chart-verify、validate 六个命令,通过 shell 工具调用。
  • 数据透视表创建:使用 pivot 命令,基于纯 OpenXML SDK 创建数据透视表,并可自动附带图表(bar/line/pie)。这是唯一受支持的数据透视表创建方式,禁止用 openpyxl 手动构建。
  • 外部数据引用:当使用外部获取的数据(datasource、web_search、API 调用等)时,必须在最终 Excel 中提供来源引用,使用“Source Name | Source URL”两列,不使用 HYPERLINK 函数;若逐行引用不现实,可创建专门的“Sources”工作表。

使用方式

技术栈

  • 运行时:Python 3
  • 主要库:openpyxl(创建、样式、公式)
  • 数据处理:pandas
  • 执行:ipython 工具执行 Python 代码,shell 工具执行 CLI 命令

KimiXlsx 命令

可执行路径:/app/.kimi/skills/kimi-xlsx/scripts/KimiXlsx 基础命令:/app/.kimi/skills/kimi-xlsx/scripts/KimiXlsx <command> [arguments]

  1. recheck(建议首先运行):检测公式错误(#VALUE!、#DIV/0!、#REF!、#NAME?、#NULL!、#NUM!、#N/A)、结果为零的公式单元格、隐式数组公式(如 MATCH(TRUE(), range>0, 0) 在 MS Excel 中需 CSE,LibreOffice 自动处理)。检测到隐式数组公式时需改写,例如用 =SUMPRODUCT((A1:A10>0)*ROW(A1:A10))-ROW(A1)+1 替代。用法:/app/.kimi/skills/kimi-xlsx/scripts/KimiXlsx recheck output.xlsx
  2. reference-check(别名 refcheck):检测公式中潜在的引用错误与模式异常,包括超出范围的引用、误包含表头行、聚合函数范围不足(SUM/AVERAGE 仅覆盖 ≤2 个单元格)、同列公式模式不一致。用法:/app/.kimi/skills/kimi-xlsx/scripts/KimiXlsx reference-check output.xlsx
  3. inspect:分析 Excel 文件结构,输出 JSON 描述所有工作表、表格、表头和数据范围。用法:/app/.kimi/skills/kimi-xlsx/scripts/KimiXlsx inspect input.xlsx --pretty
  4. pivot:创建数据透视表并可附带图表。使用前必须阅读 /app/.kimi/skills/kimi-xlsx/pivot-table.md。必需参数:input.xlsx、output.xlsx、--source "Sheet!A1:Z100"、--location "Sheet!A3"、--values "Field:sum";可选参数:--rows、--cols、--filters、--name、--style(monochrome 默认或 finance)、--chart(bar 默认、line、pie)。用法示例:/app/.kimi/skills/kimi-xlsx/scripts/KimiXlsx pivot data.xlsx output.xlsx --source "Sales!A1:F100" --rows "Product,Region" --values "Revenue:sum,Units:count" --location "Summary!A3" --chart "bar"
  5. chart-verify:验证所有图表是否有实际数据内容。退出码 0 表示所有图表有数据可安全交付,1 表示图表为空或损坏必须修复。用法:/app/.kimi/skills/kimi-xlsx/scripts/KimiXlsx chart-verify output.xlsx
  6. validate(交付前必须运行):OpenXML 结构校验,检查 OpenXML 模式合规性(Office 2013 标准)、数据透视表与图表结构完整性、不兼容函数(FILTER、UNIQUE、XLOOKUP 等 Excel 2019 及更早版本不支持)、.rels 文件路径格式。退出码 0 表示通过可交付,非零表示失败不可交付,需从头重新生成。用法:/app/.kimi/skills/kimi-xlsx/scripts/KimiXlsx validate output.xlsx

工作流程

按工作表逐一校验:对每个工作表依次执行 PLAN(设计结构、公式、引用)→ CREATE(写入数据、公式、样式)→ SAVE(保存工作簿)→ CHECK(运行 recheck + reference-check,修复至 0 错误)→ NEXT(当前工作表 0 错误后才进入下一个)。所有工作表通过后,运行 validate 命令直至退出码为 0,再交付。

公式优先原则

对于任何分析任务,默认且优先使用 Excel 公式。凡是能用公式的地方必须使用公式,禁止在 Python 中预先计算后粘贴静态值。仅在数据来自外部源、值为永不改变的常量、或公式会造成循环引用时才使用静态值。

数据透视表工作流顺序

若需为含数据透视表的文件添加额外工作表(封面、摘要等),必须先用 openpyxl 创建所有工作表,最后运行 pivot 命令。绝不能用 openpyxl 再次打开 pivot 输出文件,否则会损坏 pivotCache 路径导致文件无法在 MS Excel 中打开。

禁用函数

以下函数在 Excel 2019 及更早版本中不受支持,会导致文件无法打开,需使用替代方案:FILTER() 用 AutoFilter 或 SUMIF/COUNTIF/INDEX-MATCH;UNIQUE() 用删除重复项或辅助列;SORT()/SORTBY() 用排序功能;XLOOKUP() 用 INDEX()+MATCH();XMATCH() 用 MATCH();SEQUENCE() 用 ROW() 或手动填充;LET() 用辅助单元格;LAMBDA() 用命名区域或 VBA;RANDARRAY() 用 RAND() 填充;ARRAYFORMULA()、QUERY()、IMPORTRANGE() 为 Google Sheets 专用。

其他规则

  • VLOOKUP 语法:=VLOOKUP(lookup_value, table_array, col_index_num, FALSE),查找列必须在 table_array 最左侧;建议使用精确匹配、锁定范围、用 IFERROR 包裹。
  • 财务数值以最小单位存储(如 15000000 而非 1.5M),用 Excel 格式显示如 "¥#,##0"。
  • 交付物应简洁,不提供用户未要求的文件(尤其 readme 文档)。

适用场景

适用于需要创建、分析、操作电子表格文件的场景,包括数据汇总、分类聚合、分组统计、交叉分析、数据透视表与图表生成,以及对外部数据源获取的数据进行带来源引用的 Excel 交付。

限制

  • 交付物必须包含 .xlsx 文件。
  • 数据透视表只能用 pivot 命令创建,禁止用 openpyxl 手动构建。
  • 使用 pivot 命令前必须阅读 pivot-table.md。
  • 禁止用 openpyxl 修改 pivot 输出文件。
  • 禁用 Excel 2019 及更早版本不支持的函数。
  • 外部数据必须提供来源引用。
  • recheck 报告的任何错误必须修复,零容忍。
  • validate 失败时不可尝试修复文件,需从头重新生成。