Constraint: Public skills are published only by explicit administrator action unless they are tracked third-party market sources. Confidence: high Scope-risk: narrow Directive: Keep private/internal skills out of the public marketplace and preserve normal incremental market Git history. Tested: Marketplace validation passed.
3.0 KiB
name, description, license
| name | description | license |
|---|---|---|
| xlsx | 创建、读取、清理、编辑和检查 Excel 工作簿或 CSV/TSV,处理公式、图表、中文表头及 Windows Excel 编码,保留现有格式与宏。 | Proprietary. LICENSE.txt has complete terms |
Excel 工作簿
先读取 references/platform.md,确认 Python、中文字体及是否需要公式计算引擎。复杂工作簿先检查公式、外部链接、宏、图表和现有样式,再选择处理方法。
openpyxl用于普通 .xlsx 单元格、公式和样式;.xlsm读取时用keep_vba=True,保留扩展名。不保证复杂 Excel 功能无损,必须检查实际需要保留的部分。pandas适合表格数据清理;不要用整表重写处理需要保留样式、公式或图表的原文件。.xls旧格式先使用兼容工具读取或转换;不要直接交给 openpyxl。
简体中文与数据类型
用户未指定语言时用简体中文表头、图例与说明。新文件使用可用的中文字体,表头、行高与列宽按中文实际长度设置;已有工作簿沿用其约定。身份证号、订单号、手机号和前导零存为文本,日期存真实日期值并设置明确格式,金额单位按用户要求标注。
Windows Excel 打开的新 CSV 可写 utf-8-sig;读取旧 CSV 先判断编码和分隔符。CSV 导出不保留多表、公式和样式,转换前明确所需交付格式。
公式与缓存
按用户语义写公式,验证引用范围与预期结果;不要用硬编码数值代替可重算公式。跨表引用含空格或中文标点时正确引用工作表名。合并区域只写左上角。
openpyxl 不计算公式。检查时分别用 data_only=False 读取公式、data_only=True 读取缓存;不能保存 data_only=True 的工作簿,否则公式会被数值覆盖。
python "$skill\scripts\recalc.py" ".\输出 中文.xlsx" 120
重算会改写指定工作簿,先保留输入。脚本使用独立 LibreOffice profile,自动识别 Windows 的安装路径。检查 JSON 的 status、total_errors 和具体单元格;errors_found 即使进程退出码为零也未通过。含 error 的结果表示没有完成重算。
本市场的重算脚本只支持普通 .xlsx,无需安装 Basic 宏;使用临时副本转换,发现公式错误时不覆盖输入。不支持上游文档的 --force 参数,拒绝宏格式和外部链接工作簿。
有外部链接、宏、动态数组或 Excel 专用函数时,优先使用目标 Excel 环境验证,不能盲目用 LibreOffice 往返保存。兼容公式、缓存丢失和链接风险按需读取 upstream-guide.md。无法运行计算引擎时说明“尚未重算”,不要声称公式已验证。
交付前核对数值、公式、中文显示、筛选、冻结窗格、打印区域和图表。用新输出文件保留输入;抽查代表行、合计和异常情况,避免只检查文件能够打开。