You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何在Microsoft 365 Excel中自动汇总任意数量收费编号的总工时时长

如何在Microsoft 365 Excel中自动汇总任意数量收费编号的总工时时长

嘿,这事儿在Microsoft 365 Excel里完全能实现自动适配,不用手动改公式或者调整范围,我给你一步步说怎么弄:

  • 第一步:先算出每条记录的单条时长
    假设你的原始数据是A列存收费编号、B列存开始时间、C列存结束时间。那你可以在D2单元格输入公式:=C2-B2,按回车后,把鼠标放到D2单元格右下角的填充柄(那个小十字)上双击,所有行的单条时长就都自动算出来了——毕竟你说不会跨午夜,这个减法直接就能得到正确的时长。

  • 第二步:自动提取所有不重复的收费编号
    找个空白区域(比如F列),在F2单元格输入公式:=UNIQUE(A:A),按回车后,Excel会自动把A列里所有不重复的收费编号列出来。以后你新增了新的收费编号,这个列表还会自动更新,完全不用手动添加。

  • 第三步:自动汇总每个编号的总时长
    接着在G2单元格输入公式:=BYROW(F2#, LAMBDA(x, SUMIF(A:A, x, D:D))),按回车后,G列会自动对应F列的每个收费编号,算出它的总时长。哪怕你新增了收费编号或者该编号的时间记录,这个总时长都会自动刷新,一劳永逸。

要是觉得BYROW函数有点复杂,也可以用更简单的方式:在G2输入=SUMIF(A:A, F2, D:D),然后双击填充柄往下拉,同样能得到结果,只是当F列新增编号时,需要再拉一下公式就行。

另外,你还可以把汇总区域变成超级表:选中F2到G列最后一行的内容,按Ctrl+T,这样不仅看起来更清晰,新增数据时表格还会自动扩展。

备注:内容来源于stack exchange,提问作者Dave

火山引擎 最新活动