计算两个时间点间工作时间间隔的EXCEL自定义函数

计算两个时间点间工作时间间隔的EXCEL 自定义函数

工作需要,经常需要计算两个时间点间工作时间的时长,需要考虑上班(8:30)、下班时间(17:10)和中午午休时间(12:00~12:40)。以前一直是手工计算,麻烦而且容易算错。第一次尝试用VBA 自定义函数解决此问题,网上搜索结果不多,经过一番尝试,结果还比较满意,供大家参考使用哈。

使用时直接输入:=WorkLaborDiff(a2,b2)。

Public Function WorkLaborDiff(Rng1 As Range, Rng2 As Range) As Double

Dim iAs Integer

i = (TimeValue(Rng2) - TimeValue(Rng1)) * 10000

If i>= 0 And Hour(Rng2)

WorkLaborDiff = Round((TimeValue(Rng2) - TimeValue(Rng1)) * 24, 1)

ElseIfi>= 0 And Hour(Rng2) >= 12.666 And Hour(Rng1) >= 12.666 Then

WorkLaborDiff = Round((TimeValue(Rng2) - TimeValue(Rng1)) * 24, 1)

ElseIfi>= 0 And Hour(Rng2) >= 12.666 And Hour(Rng1)

WorkLaborDiff = Round((TimeValue(Rng2) - TimeValue(Rng1)) * 24 - 40 / 60, 1)

ElseIfi

WorkLaborDiff = Round((TimeValue(Rng2) - TimeValue(Rng1)) * 24 + 8, 1)

ElseIfi= 12.666 And Hour(Rng1) >= 12.666 Then

WorkLaborDiff = Round((TimeValue(Rng2) - TimeValue(Rng1)) * 24 + 8, 1)

Else

WorkLaborDiff = Round((TimeValue(Rng2) - TimeValue(Rng1)) * 24 + 8 + 40 / 60, 1)

End If

End Function

计算两个时间点间工作时间间隔的EXCEL 自定义函数

工作需要,经常需要计算两个时间点间工作时间的时长,需要考虑上班(8:30)、下班时间(17:10)和中午午休时间(12:00~12:40)。以前一直是手工计算,麻烦而且容易算错。第一次尝试用VBA 自定义函数解决此问题,网上搜索结果不多,经过一番尝试,结果还比较满意,供大家参考使用哈。

使用时直接输入:=WorkLaborDiff(a2,b2)。

Public Function WorkLaborDiff(Rng1 As Range, Rng2 As Range) As Double

Dim iAs Integer

i = (TimeValue(Rng2) - TimeValue(Rng1)) * 10000

If i>= 0 And Hour(Rng2)

WorkLaborDiff = Round((TimeValue(Rng2) - TimeValue(Rng1)) * 24, 1)

ElseIfi>= 0 And Hour(Rng2) >= 12.666 And Hour(Rng1) >= 12.666 Then

WorkLaborDiff = Round((TimeValue(Rng2) - TimeValue(Rng1)) * 24, 1)

ElseIfi>= 0 And Hour(Rng2) >= 12.666 And Hour(Rng1)

WorkLaborDiff = Round((TimeValue(Rng2) - TimeValue(Rng1)) * 24 - 40 / 60, 1)

ElseIfi

WorkLaborDiff = Round((TimeValue(Rng2) - TimeValue(Rng1)) * 24 + 8, 1)

ElseIfi= 12.666 And Hour(Rng1) >= 12.666 Then

WorkLaborDiff = Round((TimeValue(Rng2) - TimeValue(Rng1)) * 24 + 8, 1)

Else

WorkLaborDiff = Round((TimeValue(Rng2) - TimeValue(Rng1)) * 24 + 8 + 40 / 60, 1)

End If

End Function


相关文章

  • 财务人员必备的电子表格使用技巧
  • 财务人员必备的电子表格使用技巧 上一篇 | 下一篇:重感情的人有这种... (1) 分数的输入 如果直接输入"1/5",系统会将其变为"1月5日",解决办法是:先输入"0",然&q ...查看


  • 随心所欲在Word中加页码
  • 随心所欲在Word中加页码 经常进行Word文档编辑时,有时会遇到一些特殊情况,如文档中设置分栏后,需要在文档的每栏都添加页码,或者需要从自定义的页面开始添加页码.而在一页中有两栏或者多栏文字,使用"插入页码"命令时,却 ...查看


  • EXCEL在统计学中的应用
  • <EXCEL在统计学中的应用> 第一章 EXCEL简介 在统计数据处理中,EXCEL是相对操作比较简单也比较容易得到的软件.对于一般的统计分析其功能也相对全面,因此我们想就EXCEL在统计工作中的应用显见要做一些介绍,在以后的章 ...查看


  • 统计学实验指导书(2016)
  • 统计学实验指导书 唐爱莉 郭彩云 岳志春 鲍 琳 主编 河北工程大学 前 言 当今,统计在经济活动和日常生活中正发挥着越来越大的作用:同时随着计算机的普及,统计分析方法在各个领域得到迅速推广.统计分析常用的软件有SAS .SPSS 和Exc ...查看


  • 用excel表计算员工工龄方法
  • "工龄"是人事管理和劳资管理中经常涉及到的一项重要内容,员工的职务升迁.薪资和各种福利想必都与之有关吧!这个"东东"可千万不能算错,不然会有人来找麻烦哟! 若只需要大致计算出几名员工的工龄或许按按计算 ...查看


  • Excel表格制作方法35种
  • Excel 表格的35技 也许你已经在Excel 中完成过上百张财务报表,也许你已利用Excel 函数实现过上千次的复杂运算,也许你认为Excel 也不过如此,甚至了无新意.但我们平日里无数次重复的得心应手的使用方法只不过是Excel 全部 ...查看


  • 电脑维修资料大全
  • Excel表格自学大全 也许你已经在Excel中完成过上百张财务报表,也许你已利用Excel函数实现过上千次的复杂运算,也许你认为Excel也不过如此,甚至了无新意.但我们平日里无数次重复的得心应手的使用方法只不过是Excel全部技巧的百分 ...查看


  • 电脑知识一本通
  • 非常齐全的电脑知识 误删资料恢复 一不小心,删错了,还把回收站清空了,咋办啊? 只要三步,你就能找回你删掉并清空回收站的东西 步骤: 1.单击"开始--运行,然后输入regedit (打开注册表) 2.依次展开:HEKEY--LO ...查看


  • 办公室技巧
  • 日志返回日志列表 [转] 上班族必看的电脑技能,解决你的尴尬 2012-10-10 10:58阅读(28)转载自朋友网用户 赞赞赞赞转载分享评论复制地址举报更多上一篇 |下一篇:装修以后很快后悔... 一.误删资料恢复 一不小心,删错了,还 ...查看


热门内容