excel工作日怎样用函数计算一个月加班时间函数?

灵活掌握Excel工作日的计算的函数教程
  在Excel中,有时候根据工作的需要,我们经常需要对日期进行加减运算,从而得到这两个日期之间所产生的差数,而将一个日期值与一个表示天数的常数相加减,则能够得到一个距离该日期x天的日期值。如:“2010/05/31”-“2010/05/01”得到31,“2010/05/01”加上90得到“2010/07/30”。这在excel中是一个非常简单又实用性很强的日期计算功能。  可是,完美的东西肯定有一些局限性的,使其无法满足更高层次的需要,特别是“工作日”这一概念逐渐在各领域被广泛应用的今天,许多工作都需要进行与之相关的计算。最常见的例如员工的出勤天数、交货期的计算、付款日的计算等等。excel为用户的这些需求提供了怎样的解决方案呢?  1、使用networkdays()函数networkdays(start_date,end_date,holidays)函数是用来计算两个日期值之间完整的工作日数值。这个工作日数值将不包括双休日和专门指定的其他各种假期。  networkdays()函数带有3个参数:start_date表示开始日期,end_date为结束日期,holidays表示作为特定假日的一个或多个日期。这些参数值既能够手工输入,也能够对单元格的值进行引用。下面以计算本年5月份共有多少个工作日为例,具体介绍networkdays()函数的用法:在b1中输入起始日期“2010/05/01”,在b3中输入终止日期“2010/05/31”,在e2、e3中输入法定假日“2010/05/01”和“2010/05/02”。通过公式“=networkdays(b2,b4,e2:e3)”咱们就能够方便地计算出5月份的工作日数了。当然,咱们也能够直接输入公式“=networkdays(″2010-5-1″,″2010-6-1″,{″2010-5-1″,″2010-5-2″})”来得到这个结果。  2、使用workday()函数  workday(start_date,days,holidays)函数是用来计算某日期(开始日期)之前或之后相隔指定工作日的某一日期的日期值。它也带有3个参数:start_date表示开始日期,days为start_date之前或之后不含周末及节假日的天数。days为正值将产生未来日期;为负值产生过去日期,holidays表示作为特定假日的一个或多个日期。  在b1中输入起始日期“2010/05/01”,在b3中输入合同规定时间“90”,在e2、e3中输入法定假日“2010/05/01”和“2010/05/02”。通过公式“=workday(b2,b4,e2:e3)”,咱们能够清楚的理解交货日期是“2010/09/05”。同上,咱们还能够直接输入公式“=workday(″2010-5-1″,90,{″2010-5-1″,″2010-5-2″})”来进行计算。  3、加载扩展函数  已经迫不及待地打开excel进行尝试的朋友可能非常想去实践了,你说的这两个函数我这儿怎么没有啊?别急,点击“工具”菜单中的“加载宏”,找到“分析工具库”,给它一个小勾,再“确定”,ok!原来,这两个函数是嵌于“分析工具库”这个加载宏中的excel扩展函数,而excel在默认状态下是不加载这个加载宏的。  另外一个值得注意的问题是:将表示日期的单元格的数字格式设置成“日期”型,而表示天数的单元格则千万不要设置成“日期”型,否则你可能会看到“1900/02/21”或“36774”这些数字出现。  好了,基本上excel上的功能是非常强大的,只需要我们去慢慢挖掘,一定会非常好的。
下面是我在平时中经常用到的8个计算日期、天数、星期的函数,可能有一些大家经常用到的我没提到,也可能有一些写的不周全的地方或者错误的地方,希望与大家一起多多学习哈。EDATE函数函数定义:计算从开始日期算起的数个月之前或之后的日期.返回值为1(1900年1月1日)~2958465(9999年12月31日)范围之间的整数(序列号值).使用格式:EDATE(start_date,months)格式介绍:EDATE(指定的日期,要增加或减去的月数)注意事项:(1)如果返回的序列号值小于1,或者大于2958465时,则函数返回错误值"#NUM!".此外,当指定了无效的日期时,函数返回错误值"#VALUE!".使用函数时要注意确认参数是否正确.(2)如果months不是整数,将截尾取整.(3)注意使用此函数必须安装"分析工具库"加载宏.例子:(1)计算商品的保质期的最后截止期限EDATE函数1(2)计算本月是否需要发放奖金,这里面搭配了其他的函数,后面会一一介绍EDATE函数22. EOMONTH函数函数定义:在已知的日期上计算出给定的月份数之前或之后的日期,并自动改日期为计算后的月份的的最后一天使用格式:EOMONTH(start_date,months)格式介绍:EOMONTH(指定的日期,需要计算的给定的月数)例子:计算还款的最后期限EOMONTH函数3. WORKDAY函数函数定义:一般用于计算下一个工作日,能在周末休息日上增加自己特定的休息日期使用格式:WORKDAY(start_date,days,holidays)格式介绍:WORKDAY(指定日期,几个工作日,自己特定的非工作日)例子:计算今年除去国庆假期之外,再请5天假之后的上班时间WORKDAY函数4. NETWORKDAYS函数函数定义:用来计算指定期间内的,除了周六、日和休息日之外的工作天数使用格式:NETWORKDAYS(start_date,end_date,holidays)格式介绍:NETWORKDAYS(开始日期,结束日期,自己特定的非工作日)例子:计算本年从9月1号开始到10月31号除去周六、日和休息日之外的实际工作天数NETWORKDAYS函数5. DATEDIF函数函数定义:从已知的一段时间内,求年数、月数、天数.使用格式:DATEDIF(start_date,end_date,"y")、=DATEDIF(start_date,end_date,"m")、=DATEDIF(start_date,end_date,"d")、、=DATEDIF(start_date,end_date,"ym")、=DATEDIF(start_date,end_date,"yd")、=DATEDIF(date1,date2,"md")格式说明:DATEDIF(开始日期,结束日期,要计算的单位)最后一位参数介绍:y:计算满年数,返回值为0以上的整数;m:计算满月数,返回值为0以上的整数;d:计算满日数,返回值为0以上的整数;ym:计算不满一年的月数,返回值为1~11之间的整数;yd计算不满一年的天数,返回值为0~365之间的整数;md:计算不满意一个月的天数,返回值为0~30之间的整数.例子:计算入职年限DATEDIF函数6. DAYS360函数函数定义:按照一年360天的算法,从已知的一段时间内,求期间相差的天数.使用格式:DAYS360(start_date,end_date,method)格式介绍:DAYS360(开始日期,结束日期,计算的方式)最后一位参数介绍:用逻辑值指定计算方式.FALSE或省略:以美国NASD方式进行计算;TRUE:以欧洲方法进行计算.例子:DAYS360函数1DAYS360函数27. YEARFRAC函数函数定义:从已知的一段时间内,求它在一年所占的比率.使用格式:YEARFRAC(start_date,end_date,basis)格式介绍:YEARFRAC(开始日期,结束日期,计算的方式)最后一位参数介绍:指定表示用于计算天数的基准天数(月/年)的值.如果此参数省略则视为指定值.(1)0或省略:30天/360天(NASD方法)(2)1:实际天数/实际天数(3)2.实际天数/360天(4)3.实际天数/365天(5)4.30天/360天(欧洲方法)例子:计算某项目所耗费的时间占整年全部时间的多少YEARFRAC函数8. WEEKNUM函数函数定义:计算某天在一年中是第几个星期使用格式:WEEKNUM(serial_num,return_type)格式介绍:WEEKNUM(日期,2)注意事项:有的国家以周日为一周的开始日,有的国家以周一为一周的开始日.我国以"2"来计算.例子:WEEKNUM函数以上就是我工作中经常用到的计算日期/天数/星期的函数了,欢迎大家补充~

选择擅长的领域继续答题?
{@each tagList as item}
${item.tagName}
{@/each}
手机回答更方便,互动更有趣,下载APP
提交成功是否继续回答问题?
手机回答更方便,互动更有趣,下载APP
展开全部具体操作方法如下:进入excel,选中“打卡时间”一整列,点击上方“数据”一栏,再选中其下排的“分列”选项。2.在弹出的窗口中,选择“分隔符号(D)”文件类型,点击“下一步”。3.接下来选择“空格”分隔符号,再进入下一步。4.最后选择“常规”列数据格式,点击“完成”。5.数据分列完毕,此时需要人为判断,选中所有非加班时间列后点击鼠标右键,选中“删除”。6.在相应的工时一栏中,输入工时计算公式“=INT((HOUR(C2-B2)*60+MINUTE(C2-B2))/30)/2”计算出第一栏的加班工时。7.将鼠标放至此单元格的右下角,当鼠标形状变成“+”号时,顺势下拉至所需计算的最后一个单元格处。8.显示出正确的工时值后即可完成加班考勤工时统计。之后根据公司管理规定计算相应的加班薪水等数据。',getTip:function(t,e){return t.renderTip(e.getAttribute(t.triangularSign),e.getAttribute("jubao"))},getILeft:function(t,e){return t.left+e.offsetWidth/2-e.tip.offsetWidth/2},getSHtml:function(t,e,n){return t.tpl.replace(/\{\{#href\}\}/g,e).replace(/\{\{#jubao\}\}/g,n)}},baobiao:{triangularSign:"data-baobiao",tpl:'{{#baobiao_text}}',getTip:function(t,e){return t.renderTip(e.getAttribute(t.triangularSign))},getILeft:function(t,e){return t.left-21},getSHtml:function(t,e,n){return t.tpl.replace(/\{\{#baobiao_text\}\}/g,e)}}};function l(t){return this.type=t.type
"defaultTip",this.objTip=u[this.type],this.containerId="c-tips-container",this.advertContainerClass=t.adSelector,this.triangularSign=this.objTip.triangularSign,this.delaySeconds=200,this.adventContainer="",this.triangulars=[],this.motherContainer=a("div"),this.oTipContainer=i(this.containerId),this.tip="",this.tpl=this.objTip.tpl,this.init()}l.prototype={constructor:l,arrInit:function(){for(var t=0;t0}});else{var t=window.document;n.prototype.THROTTLE_TIMEOUT=100,n.prototype.POLL_INTERVAL=null,n.prototype.USE_MUTATION_OBSERVER=!0,n.prototype.observe=function(t){if(!this._observationTargets.some((function(e){return e.element==t}))){if(!t
1!=t.nodeType)throw new Error("target must be an Element");this._registerInstance(),this._observationTargets.push({element:t,entry:null}),this._monitorIntersections(),this._checkForIntersections()}},n.prototype.unobserve=function(t){this._observationTargets=this._observationTargets.filter((function(e){return e.element!=t})),this._observationTargets.length
(this._unmonitorIntersections(),this._unregisterInstance())},n.prototype.disconnect=function(){this._observationTargets=[],this._unmonitorIntersections(),this._unregisterInstance()},n.prototype.takeRecords=function(){var t=this._queuedEntries.slice();return this._queuedEntries=[],t},n.prototype._initThresholds=function(t){var e=t
[0];return Array.isArray(e)
(e=[e]),e.sort().filter((function(t,e,n){if("number"!=typeof t
isNaN(t)
t1)throw new Error("threshold must be a number between 0 and 1 inclusively");return t!==n[e-1]}))},n.prototype._parseRootMargin=function(t){var e=(t
"0px").split(/\s+/).map((function(t){var e=/^(-?\d*\.?\d+)(px|%)$/.exec(t);if(!e)throw new Error("rootMargin must be specified in pixels or percent");return{value:parseFloat(e[1]),unit:e[2]}}));return e[1]=e[1]
e[0],e[2]=e[2]
e[0],e[3]=e[3]
e[1],e},n.prototype._monitorIntersections=function(){this._monitoringIntersections
(this._monitoringIntersections=!0,this.POLL_INTERVAL?this._monitoringInterval=setInterval(this._checkForIntersections,this.POLL_INTERVAL):(r(window,"resize",this._checkForIntersections,!0),r(t,"scroll",this._checkForIntersections,!0),this.USE_MUTATION_OBSERVER&&"MutationObserver"in window&&(this._domObserver=new MutationObserver(this._checkForIntersections),this._domObserver.observe(t,{attributes:!0,childList:!0,characterData:!0,subtree:!0}))))},n.prototype._unmonitorIntersections=function(){this._monitoringIntersections&&(this._monitoringIntersections=!1,clearInterval(this._monitoringInterval),this._monitoringInterval=null,i(window,"resize",this._checkForIntersections,!0),i(t,"scroll",this._checkForIntersections,!0),this._domObserver&&(this._domObserver.disconnect(),this._domObserver=null))},n.prototype._checkForIntersections=function(){var t=this._rootIsInDom(),n=t?this._getRootRect():{top:0,bottom:0,left:0,right:0,width:0,height:0};this._observationTargets.forEach((function(r){var i=r.element,a=o(i),c=this._rootContainsTarget(i),s=r.entry,u=t&&c&&this._computeTargetAndRootIntersection(i,n),l=r.entry=new e({time:window.performance&&performance.now&&performance.now(),target:i,boundingClientRect:a,rootBounds:n,intersectionRect:u});s?t&&c?this._hasCrossedThreshold(s,l)&&this._queuedEntries.push(l):s&&s.isIntersecting&&this._queuedEntries.push(l):this._queuedEntries.push(l)}),this),this._queuedEntries.length&&this._callback(this.takeRecords(),this)},n.prototype._computeTargetAndRootIntersection=function(e,n){if("none"!=window.getComputedStyle(e).display){for(var r,i,a,s,u,l,f,h,p=o(e),d=c(e),v=!1;!v;){var g=null,m=1==d.nodeType?window.getComputedStyle(d):{};if("none"==m.display)return;if(d==this.root
d==t?(v=!0,g=n):d!=t.body&&d!=t.documentElement&&"visible"!=m.overflow&&(g=o(d)),g&&(r=g,i=p,a=void 0,s=void 0,u=void 0,l=void 0,f=void 0,h=void 0,a=Math.max(r.top,i.top),s=Math.min(r.bottom,i.bottom),u=Math.max(r.left,i.left),l=Math.min(r.right,i.right),h=s-a,!(p=(f=l-u)>=0&&h>=0&&{top:a,bottom:s,left:u,right:l,width:f,height:h})))break;d=c(d)}return p}},n.prototype._getRootRect=function(){var e;if(this.root)e=o(this.root);else{var n=t.documentElement,r=t.body;e={top:0,left:0,right:n.clientWidth
r.clientWidth,width:n.clientWidth
r.clientWidth,bottom:n.clientHeight
r.clientHeight,height:n.clientHeight
r.clientHeight}}return this._expandRectByRootMargin(e)},n.prototype._expandRectByRootMargin=function(t){var e=this._rootMarginValues.map((function(e,n){return"px"==e.unit?e.value:e.value*(n%2?t.width:t.height)/100})),n={top:t.top-e[0],right:t.right+e[1],bottom:t.bottom+e[2],left:t.left-e[3]};return n.width=n.right-n.left,n.height=n.bottom-n.top,n},n.prototype._hasCrossedThreshold=function(t,e){var n=t&&t.isIntersecting?t.intersectionRatio
0:-1,r=e.isIntersecting?e.intersectionRatio
0:-1;if(n!==r)for(var i=0;i0&&function(t,e,n,r){var i=document.getElementsByClassName(t);if(i.length>0)for(var o=0;o推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
为你推荐:
下载百度知道APP,抢鲜体验使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。扫描二维码下载
×个人、企业类侵权投诉
违法有害信息,请在下方选择后提交
类别色情低俗
涉嫌违法犯罪
时政信息不实
垃圾广告
低质灌水
我们会通过消息、邮箱等方式尽快将举报结果通知您。说明
做任务开宝箱累计完成0
个任务
10任务
50任务
100任务
200任务
任务列表加载中...

我要回帖

更多关于 怎样用函数计算一个月加班时间 的文章

 

随机推荐