📊 "老板,我要看各地区的利润情况。"
你花了一上午,从 50 个分公司的 Excel 表里复制粘贴,终于汇总好了。
第二天,老板说:"不对,我要看按产品类目的利润。"
你又花了一上午重新汇总...
✨ 有没有办法一键自动汇总?今天教大家:用 Excel 做利润分析表,用 Python 自动合并 50 个分公司的数据。
📊 一、利润分析的核心维度
📌 1.1 常见分析维度
📌 1.2 利润计算公式
💡 核心公式:
毛利润 = 销售收入 - 销售成本
毛利率 = 毛利润 ÷ 销售收入
净利润 = 毛利润 - 运营费用 - 税费
净利率 = 净利润 ÷ 销售收入
📁 二、数据场景
假设我们有 50 个分公司的数据文件:
分公司数据/ ├── 北京分公司_2026Q1.xlsx ├── 上海分公司_2026Q1.xlsx ├── 广州分公司_2026Q1.xlsx ├── ... (共 50 个文件)
每个文件结构相同:
🔧 三、方案对比
📌 3.1 方案 1:纯 Excel 手工汇总(不推荐)
⚠️ 操作步骤:
❌ 问题:
• 耗时:约 30-60 分钟
• 容易出错:复制错行、粘贴错位
• 不可复用:下个月还要重新来
📌 3.2 方案 2:Python 自动汇总(推荐)
import pandas as pd
from pathlib import Path
# 1. 设置文件夹路径
data_folder = Path('分公司数据')
output_file = '汇总_2026Q1.xlsx'
# 2. 获取所有 Excel 文件
excel_files = list(data_folder.glob('*.xlsx'))
print(f'找到 {len(excel_files)} 个文件')
# 3. 逐个读取并合并
all_data = []
for file in excel_files:
df = pd.read_excel(file)
df['分公司'] = file.stem.replace('_2026Q1', '')
all_data.append(df)
print(f'已读取:{file.name}')
# 4. 合并所有数据
merged = pd.concat(all_data, ignore_index=True)
# 5. 计算利润指标
merged['毛利润'] = merged['销售收入'] - merged['销售成本']
merged['毛利率'] = merged['毛利润'] / merged['销售收入']
merged['净利润'] = merged['毛利润'] - merged['运营费用']
merged['净利率'] = merged['净利润'] / merged['销售收入']
# 6. 保存结果
merged.to_excel(output_file, index=False)
print(f'\n✅ 汇总完成:{output_file}')
print(f'总行数:{len(merged)}')
✅ 运行结果:
找到 50 个文件
已读取:北京分公司_2026Q1.xlsx
...
✅ 汇总完成:汇总_2026Q1.xlsx
总行数:25000
耗时:约 30 秒(vs 手工 60 分钟)
📈 四、Excel 利润分析表
📌 4.1 创建透视表
选中数据 → 插入 → 数据透视表
📌 4.2 按地区分析
💡 洞察:
• 华东区利润最高(150 万)
• 华南区毛利率偏低(35%)
📌 4.3 按产品类目分析
💡 洞察:
• 服装类毛利最高(45%)
• 电子类销量大但毛利低
📋 五、总结
📌 5.1 两种方案对比
✅ 关键收获:
1. Python 自动合并 50 个文件(30 秒)
2. Excel 透视表多维度分析
3. 可视化展示利润情况
4. 异常值检测和同期对比
📢 下周预告:明天讲复购率计算,纯 Excel 公式搞定,不用 Python!
❓ 互动话题:你们公司有多少个分公司/门店?欢迎留言交流!
本文工具:Excel 2016+(透视表、条件格式) | Python 3.8+(pandas 库)
难度:⭐⭐⭐☆☆(进阶级) | 预计耗时:Excel 分析 15 分钟 + Python 脚本 2 分钟
喜欢本文请点赞 + 在看,分享给更多需要的朋友!