背景:每月初,12 个门店经理会发送各自的销售报表给你,需要汇总成一份全国总表。 每个门店报表结构相同,包含 200-300 行数据。
挑战:手动复制粘贴 12 个文件,容易出错,还要统一格式、添加公式,耗时 2-3 小时。
目标:一次性选择 12 个文件,自动合并成全国总表,并生成基础汇总 Sheet。
支持占位符:YYYYMMDD 会自动替换为当前日期
正在读取文件...
复制下面的提示词,发送给 AI,AI 会生成一个完整的合并工具:
你是一个前端开发专家,擅长用纯 HTML+JS 处理 Excel 文件。
请帮我写一个 Excel 合并工具,需求如下:
【输入】
- 多个 Excel 文件(例如 12 个门店的月度报表)
- 每个文件结构相同,第一行是表头
- 示例表头:日期、城市、门店、产品、销量、销售额、成本、毛利润、客户类型、支付方式、回款金额、备注
【处理逻辑】
1. 用户可以选择多个 Excel 文件上传
2. 用 SheetJS 读取第一个 Sheet,并用第一行作为字段名生成对象数组
3. 保留原始字段和原始单元格值,合并到一个大表中
4. 添加"来源文件"列,标记每行数据来自哪个文件
5. 读取表头后自动识别字段:产品列、销量列、销售额列
6. 按识别到的产品列分组汇总,生成每个产品的总销量和总销售额
7. 如果识别不到关键字段,生成"字段识别说明" Sheet,提示用户检查列名,不要静默输出错误结果
【输出】
- 1 个 Excel 文件
- Sheet1(合并数据):所有文件的合并结果
- Sheet2(汇总分析):按产品汇总
- 文件名:合并结果_YYYYMMDD.xlsx
【要求】
- 纯 HTML 文件,双击浏览器打开就能用
- 数据在本地处理,不上传服务器
- 使用 SheetJS 和 JSZip 库
- 支持选择多个文件
- 代码要有详细注释
【重要代码约束】
- 读取数据时使用 XLSX.utils.sheet_to_json(worksheet, { defval: '' }),不要使用 header: 1 后再当对象读取
- 合并数据 Sheet 必须保留原始表头,不能只输出固定的"日期、产品、销量、销售额"
- 字段读取必须用 row['产品'] 或 row[fieldName],不能写成未声明变量
- 汇总时必须先找到字段名:productField、qtyField、amountField,再用 row[productField]、row[qtyField]、row[amountField] 取值
- 数值汇总前使用 Number(row[qtyField] || 0) 和 Number(row[amountField] || 0)
- 禁止把缺失字段静默写成 undefined;缺失时写空字符串,并在说明 Sheet 报告
- 下载前检查:如果"产品"整列为空或 undefined,或"销量/销售额"整列为 0,要拦截下载并显示错误提示
请生成完整的 HTML 代码。
💡 提示:把 AI 生成的代码保存为 .html 文件,双击浏览器打开即可使用。
如果你想调整工具的功能,用大白话描述需求,让 AI 帮你改:
我有一个 Excel 合并工具,现在想调整功能。 当前功能: - 上传多个 Excel 文件(比如 12 个门店的月度报表) - 自动合并成一个文件 - 可以选择添加"来源列"(标注数据来自哪个文件) - 可以选择汇总方式(求和/平均/计数) 我想改成: 1. 合并时自动去除重复行(完全相同的数据只保留一条) 2. 检查异常数据(比如销售额小于 0 的行),标记出来 3. 按"客户类型"或"产品类别"分组,生成一个汇总 Sheet 请帮我修改工具代码,保持其他功能不变。
mergeData() 函数,定制你自己的合并逻辑