【问题标题】:Excel timespan calculation for time reportExcel时间跨度计算时间报告
【发布时间】:2013-04-02 09:56:25
【问题描述】:

我需要为我的公司写一份时间报告。

遗憾的是我必须使用给定的格式:

B1: 9.00 - 18.00 //timespan between arrival and leaving

C1: 60.00 //minutes I spent in drinking coffee

D1: 8.00 // total hours of work

我需要一个公式,a) 计算 A1 中两个时间之间的总小时数,减去以分钟为单位的休息时间,并给出在 D1 中工作的总小时数。我不允许更改单元格的格式(例如在列中分别写入到达和离开时间),这使得它变得复杂。

提前谢谢你,哈利

更新

=IF(ISBLANK(B16)," ",(TIMEVALUE(TRIM(RIGHT(B16, SEARCH("-",B16,1)-1)))-TIMEVALUE(TRIM(LEFT(B16, SEARCH("-",B16,1))))) * 24 -C16/60)

现在工作正常。

【问题讨论】:

    标签: excel ms-office


    【解决方案1】:

    你可以试试 D1 的结果:

    =TRIM(RIGHT(B1, SEARCH(" - ",B1,1)))-TRIM(LEFT(B1,SEARCH(" - ",B1,1)-1))-C1/60
    

    或者如果连字符 (-) 之间没有空格,我建议:

    TRIM(RIGHT(B1, SEARCH("-",B1,1)-1))-TRIM(LEFT(B1,SEARCH("-",B1,1)-1))-C1/60
    

    说明:

    =TRIM(RIGHT(B1, SEARCH(" - ",B1,1)-1)) = 时间跨度的右侧部分 (18.00)

    =TRIM(LEFT(B1,SEARCH(" - ",B1,1)-1)) = 时间跨度的左边部分 (9.00)

    C1/60 = 休息分钟(1 小时 = 60 分钟)

    【讨论】:

    • 实际上我收到了#NAME 错误,但我正在处理它:) 到目前为止谢谢。我会在它工作时报告
    • 如果开始时间是两位数 - 10.00 等,则公式不起作用。
    • 我刚刚编辑了我的答案,尝试使用新值。只需将 SEARCH("-",B1,1) 替换为 SEARCH(" - ",B1,1)
    • 用我的语言替换了英文术语并添加了一些东西。现在它的工作就像一个魅力 - 谢谢!附言缺少 -1,我会将我的版本添加到问题文本中。
    猜你喜欢
    • 1970-01-01
    • 2012-12-09
    • 2012-12-16
    • 1970-01-01
    • 2016-05-22
    • 2010-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多