【问题标题】:Merge multiple rows based on column & sum time values in Excel for MAC在 Excel for MAC 中根据列和总时间值合并多行
【发布时间】:2018-03-24 23:17:40
【问题描述】:

我每天从 KRONOS 提取一份报告并通过电子邮件发送给我,其中有 4 列。姓名在第一列下方,员工 ID、工资类型、支付小时数按该顺序排列。我只需要合并小时数,以便每行有一个值和一个名称。我尝试使用简单的数据透视表,但失败有两个原因。

  1. 我不知道如何以 00:00 格式计算小时持续时间 (尝试了字段设置中的每个选项)要么得到 N/a 要么得到实例数。
  2. 即使有效,我也想知道如何从“LP CA 膳食罚款”指示的工资列类型中排除 1.00 小时罚款

我尝试在此处粘贴实际表格,但它不允许我这样做,所以下面是我为一名员工复制问题的最佳尝试。

Curt, Cathy 90066408 LP CA Meal Penalty 1.00

Curt, Cathy 90066408 LP 加时赛 1.77

Curt, Cathy 90066408 LP Regular 8.00

想要的结果: 柯特,凯茜 90066408 = 9.77

不想要:Curt, Cathy 90066408 = 10.77

【问题讨论】:

    标签: excel macos excel-formula pivot duration


    【解决方案1】:

    假设你的数据在Column A:D,结果需要从Column G显示,

    要从Column A 中获取所有唯一的Names,请在Cell G2 中输入以下公式

    =IFERROR(INDEX($A$2:$A$9,MATCH(0,INDEX(COUNTIF($G$1:G1,$A$2:$A$9),0,0),0)),"")
    

    根据需要向下拖动/复制。根据Column A中的数据更改范围$A$2:$A$9

    现在,要得到对应的Employee ID,在Cell H2中输入以下公式

    =VLOOKUP(G2,A2:D9,2)
    or
    =INDEX($B$2:$B$9,MATCH(G2,$A$2:$A$9,0))
    

    最后,要获得Total Hours,在Cell I2中输入以下公式

    =SUMIFS($D$2:$D$9,$A$2:$A$9,G2,$C$2:$C$9,"<>LP CA Meal Penalty")
    or
    =SUMPRODUCT(($D$2:$D$9)*($A$2:$A$9=G2)*($C$2:$C$9<>"LP CA Meal Penalty"))
    

    查看图片以供参考。

    编辑:

    =SUMIFS($D$2:$D$9,$A$2:$A$9,G2,$C$2:$C$9,"<>LP CA Meal Penalty",$C$2:$C$9,"<>LP CA Rest Break Penalty")
    or
    =SUMPRODUCT(($D$2:$D$9)*($A$2:$A$9=G2)*($C$2:$C$9<>"LP CA Meal Penalty")*($C$2:$C$9<>"LP CA Rest Break Penalty"))
    

    【讨论】:

    • 太棒了!它奏效了,我永远感激不尽。我还有一个问题要问——我刚刚意识到除了 LP CA 膳食处罚之外,我还需要从 C 列中排除另一种类型的薪酬。单元格显示“LP CA Rest Break Penalty”——我该如何排除它?我试图模仿 sumif 和 sumproduct 逻辑,但总是出错。
    【解决方案2】:

    似乎您需要做的就是按第三列过滤并在过滤器中排除“LP CA 膳食处罚”。

    附件是我的结果示例和我在数据透视表上选择的过滤器。 Result gotten

    Filter excluding the unwanted work hour type from the sum

    让我知道这是否适合你。

    【讨论】:

    • 感谢您将支付代码类型放入过滤器的虚拟提醒...duhhh。但是我的总和仍然为零?
    • 我截了pivot的截图不知道怎么分享给大家
    • 总而言之,您应该将 SUM 作为字段类型,在字段显示选项中没有计算。关于您对数字格式 hh:mm 的要求,这完全取决于您的源数据。如果不是那种格式,转换为 hh:mm 将需要一些额外的工作。如果源格式相同,只需转到字段选项中的“数字格式”并将其设置为自定义并键入 hh:mm。您想要的结果是什么,我们共同提出的解决方案又缺少什么?
    【解决方案3】:

    你可以使用SUMIFS作为我上面给你的例子,使用的公式是:

    =SUMIFS($D$2:$D$9,$A$2:$A$9,F2,$C$2:$C$9,"<>"&"LP CA Meal Penalty")
    

    这将从计算中排除LP CA Meal Penalty

    另外,对于时间格式,要求不是很明确,但这是hh:mm 我理解你想要的。您可以使用的公式是:

    =TEXT(H2/24,"hh:mm")
    

    请调整适合您的数据结构的范围,如果这是您的要求,请告诉我。

    【讨论】:

    • 你太棒了。太感谢了。我仍在调整我的桌子以符合您的建议。我希望我不会简化我的原始表格,这样我就可以插入并播放你的公式。作为新用户是否有解决方法,以便您可以看到我的表格?这个网站在用户乐于助人方面是最好的,但对于新用户来说这很难......
    • 您可以截取数据(可能还包括行号和列号)并粘贴到您的问题中。您只需单击问题下方的edit 按钮即可。进入后,您应该会看到一个img 图标(带有山)供您上传图片。
    猜你喜欢
    • 2012-06-11
    • 1970-01-01
    • 1970-01-01
    • 2022-01-13
    • 1970-01-01
    • 2012-11-02
    • 2020-07-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多