用途
xlsx 技能用于创建、编辑和分析 .xlsx 电子表格文件,支持公式、格式、数据分析和可视化。当用户需要处理 Excel 文件时,可使用该技能完成从数据读取、模型构建到公式验证的完整流程。
主要能力
- 使用 pandas 读取、分析和写入 Excel 数据,支持多工作表操作。
- 使用 openpyxl 创建新工作簿、编辑现有文件、添加公式和格式。
- 通过 recalc.py 脚本调用 LibreOffice 重新计算公式,并扫描所有单元格中的 Excel 错误(如 #REF!、#DIV/0!、#VALUE!、#NAME?)。
- 遵循财务模型的行业标准颜色编码:蓝色文本表示硬编码输入,黑色文本表示公式和计算,绿色文本表示同一工作簿内跨工作表链接,红色文本表示外部文件链接,黄色背景表示需要关注的关键假设或待更新单元格。
- 遵循数字格式规范:年份格式为文本字符串,货币使用 $#,##0 格式并在表头注明单位,零值显示为“-”,百分比默认保留一位小数,估值倍数格式为 0.0x,负数使用括号。
- 公式构建规则:所有假设(增长率、利润率、倍数等)放在单独的假设单元格中,公式中使用单元格引用而非硬编码值。
- 硬编码值需附文档说明,格式为“Source: [系统/文档], [日期], [具体引用], [URL 如适用]”。
使用方式
- 选择工具:数据分析使用 pandas,公式和格式使用 openpyxl。
- 创建或加载工作簿。
- 修改数据、公式和格式。
- 保存文件。
- 如果使用了公式,必须运行
python recalc.py output.xlsx重新计算公式。 - 检查 recalc.py 返回的 JSON 输出,修复错误后再次计算。
常用命令示例:
import pandas as pd
df = pd.read_excel('file.xlsx')
all_sheets = pd.read_excel('file.xlsx', sheet_name=None)
df.to_excel('output.xlsx', index=False)
from openpyxl import Workbook, load_workbook
from openpyxl.styles import Font, PatternFill, Alignment
wb = Workbook()
sheet = wb.active
sheet['B2'] = '=SUM(A1:A10)'
sheet['A1'].font = Font(bold=True, color='FF0000')
wb.save('output.xlsx')
python recalc.py output.xlsx 30
适用场景
- 创建新的 Excel 模型或报表。
- 编辑现有 Excel 文件并保留原有格式和公式。
- 进行数据分析、统计和可视化。
- 构建财务模型,需要遵循颜色编码和数字格式标准。
- 更新模板文件时,需严格匹配现有格式、样式和约定。
限制
- 需要安装 LibreOffice 以重新计算公式。
- openpyxl 创建或修改的文件中公式以字符串形式存在,不包含计算值,必须通过 recalc.py 重新计算。
- 所有 Excel 模型必须交付时零公式错误。
- 更新模板时,现有模板约定始终优先于本指南中的格式建议。
- 公式验证需注意行偏移(Excel 行从 1 开始,DataFrame 行从 0 开始)、列映射、除零错误、跨工作表引用格式等常见问题。