You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Excel Pivot Table:如何合并两列人员数据计算员工净工时余额?

解决方法:先转换数据结构,再创建数据透视表

你的问题根源在于原始表格是宽表结构(同一类数据分多列存储:两个姓名列、两个工时列),而数据透视表需要长表结构(每一行对应一条独立的员工工时记录)。直接用计算字段无法让系统识别两个列中的同一员工,必须先转换数据格式。

步骤1:将宽表转换为长表

方法一:用Power Query批量处理(推荐大数据量)

  1. 选中原始数据区域,点击「数据」选项卡 → 「从表格/区域」(Excel 2016及以后版本),进入Power Query编辑器
  2. 同时选中第2列(Name)+第3列(Hours (Positive))、第4列(Name)+第5列(Hours (Negative))
  3. 点击「转换」选项卡 → 「逆透视列」→ 「逆透视列(成对)」
  4. 生成Attribute.1(姓名)、Value.1(工时)列后,重命名为Name和Hours,删除多余列,保留Date、Name、Hours
  5. 点击「关闭并上载」,将转换后的长表导出到Excel

方法二:手动整理(适合小数据量)

  1. 复制原始数据的Date、第2列Name、Hours (Positive),粘贴到新工作表空白区域
  2. 复制原始数据的Date、第4列Name、Hours (Negative),粘贴到刚才的区域下方
  3. 确保负工时保持原有负数格式

步骤2:创建数据透视表计算净余额

  1. 选中转换后的长表数据
  2. 点击「插入」选项卡 → 「数据透视表」,选择放置位置
  3. 在数据透视表字段面板中:
    • 将Name拖到「行」区域
    • 将Hours拖到「值」区域(默认自动求和,结果即为员工净余额)
    • 可选:将Date拖到「筛选器」区域,方便按时间段筛选统计

补充说明

基础数据示例

日期姓名1正工时姓名2负工时
2024/5/1Alice3Carlos-2
2024/5/2Bob4Alice-1
2024/5/3Carlos2Bob-3

预期结果示例

姓名净余额
Alice2
Bob1
Carlos0

内容的提问来源于stack exchange,提问作者user1191513

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 07:27:05