首页 > 芯片 > 半导体 > 如何编程计算一段时间里多少是工作日,excel如何统计某日期段内的工作日天数

如何编程计算一段时间里多少是工作日,excel如何统计某日期段内的工作日天数

来源:整理 时间:2023-08-29 01:06:35 编辑:亚灵电子网 手机版

1,excel如何统计某日期段内的工作日天数

1、统计两个日期之间的工作日天数(按周六、日双休不考虑节日)这个最简单,相应的EXCEL公式如下:C2:=NETWORKDAYS(A2,B2)实例下载:统计两个日期之间的工作日天数(按周六、日双休不考虑节日).xlshttp://pan.baidu.com/s/1jG3NQ8u2、统计两个日期之间的工作日天数(按周日单休不考虑节日)如图所示,相应的EXCEL公式如下:C2:=NETWORKDAYS.INTL(A2,B2,11)实例下载:统计两个日期之间的工作日天数(按周日单休不考虑节日).xlshttp://pan.baidu.com/s/1hqDvxZI3、统计两个日期之间的工作日天数(自定义节假日,按周六、日双休)这个就比较复杂了,但更具有通用性,其实也是可以使用相应的Excel函数解决的。解决思路:1、使用NETWORKDAYS.INTL函数统计两个日期之间的工作日数2、调整该函数的第3、4参数以实现需求,具体解析见下3、第4参数可以结合自定义名称的创建以实现节假日区域的自由扩展,公式结果动态更新。关于第3参数weekend第二种表达方式的几点说明:1、weekend 的表达方式2是一个长度为7的字符串2、该字符串中的每个字符代表一周中的一天,从星期一开始3、1 代表休息日,0代表工作日4、该字符串中只允许使用字符 1和 0关于第4参数holidays的几点说明:1、是一个包含一个或多个日期的可选集合,这些日期将作为节假日不参与工作日个数统计2、可以是包含日期的单元格区域,也可以是区域的引用,还可以是代表日期序列值的数组常量3、其中的日期或序列值顺序可以任意打乱,不影响统计。【公式】打开名称管理器创建自定义名称holidays=OFFSET(Sheet1!$E$2,,,COUNTA(Sheet1!$E:$E)-1)C2输入公式:=NETWORKDAYS.INTL(A2,B2,1,holidays)实例下载::统计两个日期之间的工作日天数(自定义节假日,按周六、日双休).xls
假设固定日期在A1,为2008-9-10每天变换为当天的数值在B1,公式为=today()计算差值的数据在C1,公式为=A1-B1,并调整格式为常规.
使用NETWORKDAYS函数进行处理Excel版本参考:2010测试:A1和A2单元格中日期段内的工作日天数1、选中B1单元格2、输入公式:=NETWORKDAYS(A1,A2)3、回车,查看效果知识点补充:NETWORKDAYS语法:NETWORKDAYS(开始日期,结束日期)工作日不包括周末和专门指定的假期。可以使用函数 NETWORKDAYS,根据某一特定时期内雇员的工作天数,计算其应计的报酬。
=NETWORKDAYS(a10,a2,0)返回是除周六与周天的日期。但计算了两头的日期,按我的生活中计算,算头不算尾的方式,那么你必须减1.那公式写成=NETWORKDAYS(E10,E11,0)-1,如果你前面的日期大于后面的日期,那返回的负数,所以,你要加上绝对值的函数。=ABS(NETWORKDAYS(E10,E11,0))-1

excel如何统计某日期段内的工作日天数

2,Java编写 求某天之后的多少个工作日是哪天

我从自己的工具类中使用了几个方法,一并贴出来供楼主参考:/** * 判断当前日期为星期几 * @param date * @return */ public static int dayOfWeek(Date date) Calendar aCalendar = Calendar.getInstance(); aCalendar.setTime(date); int weekDay = aCalendar.get(Calendar.DAY_OF_WEEK); return weekDay; } /** * 获取指定日期指定天数后的日期 * @param date 指定日期 * @param index 指定天数 * @param flag 是否将时分秒归0 * @return */ public static Date getNextDate(Date date, int index, boolean flag) Calendar cal = Calendar.getInstance(); cal.setTime(date);// 获得当前时间 if(flag) // 日期不变,把时间设定为00:00:00 cal.set(Calendar.HOUR_OF_DAY, 0); cal.set(Calendar.MINUTE, 00); cal.set(Calendar.SECOND, 00); } cal.set(Calendar.DATE, cal.get(Calendar.DATE) + index); return cal.getTime(); } public static Date getDate(Date currentDate,int days) /* * 1,根据传入日期获取下一天日期 * 2,判断下一天日期是否为工作日,如果是则设置下一次循环日期为此日期 * 如果不为工作日,为周6,日期前进2天,为周天前进1天 * 3, 获取指定天数后的工作日 */ Date date = currentDate; /* 设置循环次数 * 如果含最后一天则循环 days + 1 天,不需要含最后一天,则循环 days次 * */ for(int i = 0; i < days + 1; i++) Date nextDate = getNextDate(date,1,false); //获取下一天的日期 int weekDay = dayOfWeek(nextDate); //下一天日期为星期几 if(weekDay == 1) date = getNextDate(date,2,false); }else if(weekDay == 6) date = getNextDate(date,3,false); }else date = nextDate; } } return date; }虽然这个满足楼主的需求,但是肯定有更简单的算法,现在要出门,来不及想了,先用用。这个问题的思路我现在想到的就是判断下一日期是否为工作日,为周6怎样处理,为周日怎样处理。希望回来的时候能看到更好的计算方法(good luck)。楼主应该建立自己的常用工具类库,如日期,图片,字符串等等的常用处理(注意方法的复用),这样开发的效率会很高。
请问完成后可以加分么?谢谢。再看看别人怎么说的。
直接用 java.util.Calendar 就可进行所有的时间计算了,你从网上好好搜索下 Calendar 的用法。在这里面给你简单说下如何实现:首先,你用 java.text.SimpleDateFormat 将 2013-06-21 这个 String 转换格式化成一个 Date 值,然后,直接用 java.util.Calendar 加载这个 Date,最后,在 Calendar 里面使用 :Calendar c = .....c.add(Day_Of_Week, 3);在 Calendar 里面还有很多功能,自己详细体会一下。
public Date getDate(Date currentDate,int days) Calendar calendar=Calendar.getInstance(); calendar.setTime(currentDate); int i=0; while(icalendar.add(Calendar.DATE,1); i++; if(calendar.get(Calendar.DAY_OF_WEEK)==Calendar.SATURDAY || calendar.get(Calendar.DAY_OF_WEEK)==Calendar.SUNDAY){ i--; } } return calendar.getTime(); }不管三七二十一,先加上一天,在判断这一天是不是休息日,是:减去一天,否则继续加...循环..知道满足终止条件 我还是蛮热心的吧...哈哈

Java编写 求某天之后的多少个工作日是哪天

3,java 编程的问题如何计算某年某月的工作日

import java.util.Calendar;import java.util.Scanner;public class replacenbsp /** * @param args */ public static void main(String[] args) Scanner scanner = new Scanner(System.in); System.out.print("请输入日期,格式为yyyy-MM: "); String s = scanner.nextLine(); if(!s.matches("\\d System.out.println("日期格式输入错误"); System.exit(0); } int count = 0; int month = Integer.parseInt(s.substring(5, 7)); Calendar cal = Calendar.getInstance(); cal.set(Calendar.YEAR, Integer.parseInt(s.substring(0, 4))); cal.set(Calendar.MONTH, month - 1); cal.set(Calendar.DATE, 1); while(cal.get(Calendar.MONTH) < month) int day = cal.get(Calendar.DAY_OF_WEEK); if(!(day == Calendar.SUNDAY || day == Calendar.SATURDAY)) count++; } cal.add(Calendar.DATE, 1); } System.out.println(count); }}
java.util.CalendarDAY_OF_MONTH get 和 set 的字段数字,指示一个月中的某天DAY_OF_WEEK get 和 set 的字段数字,指示一个星期中的某天。有思路没再看看别人怎么说的。
用Canlendar吧。 Calendar c = new GregorianCalendar(2014, Calendar.DECEMBER, 1);这里面的年和月份你自己换吧。 int day = c.get(Calendar.DAY_OF_WEEK); //获取当前天数0是周日,就判断day是1-5的就是工作日。
public static int getWorkDays(int year, int month) int days = 0; Calendar c = Calendar.getInstance(); c.set(year, month - 1, 1); int maxDay = c.getActualMaximum(Calendar.DATE); for (int i = 0; i < maxDay; i++) if (c.get(Calendar.DAY_OF_WEEK) != 6 && c.get(Calendar.DAY_OF_WEEK) != 7) days++; } c.add(Calendar.DATE, 1); } return days; }
import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import java.util.List; import com.taagoo.wenbo.common.util.DateUtils; public class Test private static List<Date> getDates(int year,int month) List<Date> dates = new ArrayList<Date>(); Calendar cal = Calendar.getInstance(); cal.set(Calendar.YEAR, year); cal.set(Calendar.MONTH, month - 1); cal.set(Calendar.DATE, 1); while(cal.get(Calendar.YEAR) == year && cal.get(Calendar.MONTH) < month) int day = cal.get(Calendar.DAY_OF_WEEK); if(!(day == Calendar.SUNDAY || day == Calendar.SATURDAY)) dates.add((Date)cal.getTime().clone()); } cal.add(Calendar.DATE, 1); } return dates; } public static void main(String[] args) List<Date> dates = getDates(2013,12); for(Date date : dates) System.out.println(DateUtils.getDate2String(date)); } } }
java.util.CalendarDAY_OF_MONTH get 和 set 的字段数字,指示一个月中的某天DAY_OF_WEEK get 和 set 的字段数字,指示一个星期中的某天。有思路没

java 编程的问题如何计算某年某月的工作日

文章TAG:如何编程计算一段时间里多少是工作日如何编程计算

最近更新

  • 无线键盘接口电路,电脑键盘按键不行怎么办?无线键盘接口电路,电脑键盘按键不行怎么办?

    接口电路。检查键盘和电脑主机之间的连接接口,以确定接触是否良好,再次插拔连接键盘和电脑主机的USB电缆,键盘电路板是整个键盘的控制核心,位于键盘内部,主要作为按键扫描识别、编码和传输.....

    半导体 日期:2024-04-11

  • 大功率灯泡功率多少,一般家用电灯泡功率多大大功率灯泡功率多少,一般家用电灯泡功率多大

    本文目录一览1,一般家用电灯泡功率多大2,平时所说的大功率LED灯是多大功率3,灯泡电功率一般是多少4,一个普通白炽灯泡功率为多少啊5,400W250W70W150W60W的电灯的功率是多大6,灯泡的实际功率.....

    半导体 日期:2024-04-10

  • 1节1号标准干电池的内阻计算多少,1号电池的内阻是多少1节1号标准干电池的内阻计算多少,1号电池的内阻是多少

    1号电池的内阻是多少2,一节干电池的内阻是多少3,1号和5号干电池内阻各多大4,干电池的内阻一般为多大5,一节干电池的电流是多大6,15V1号干电池内阻一般是多少7,1号电池内阻大约为多少8,一号干.....

    半导体 日期:2024-04-10

  • 运放水位控制电路,水泵水位控制电路示意图运放水位控制电路,水泵水位控制电路示意图

    家用水泵的自动抽水控制电路如下图所示:当水位下降时,浮子开关的触点闭合,水泵工作。电子水位开关和控制器,适用于污水环境,当水位下降到B点以下时,由于脚②的低电位而设置,高输出电平释放继.....

    半导体 日期:2024-04-10

  • 30mw是多少w,喇叭功率30MW 是 什么意思30mw是多少w,喇叭功率30MW 是 什么意思

    喇叭功率30MW是什么意思mW是表示功率大小的一种单位,1KW=1000W,1W=1000mW。2,30mwcm2等于多少wm230/1000*10000=300没看懂什么意思?3,2030mw什么意思20-30兆瓦,1兆瓦=1000KW虽然我很聪明,但这.....

    半导体 日期:2024-04-10

  • 下雨传感器电路,用于感应雨水的传感器下雨传感器电路,用于感应雨水的传感器

    雨雪传感器,雨雪天主机自动停机。当刮水器杆设置在INT位置时,下雨时,雨量传感器将自动感应雨量以挂水,它装有雨水传感器,刮风下雨时会自动关窗,GloriasaltyRV有一个雨水传感器,此时在外面晾晒.....

    半导体 日期:2024-04-10

  • 反 型滤波电路,反向过滤方法反 型滤波电路,反向过滤方法

    如果我们想要获得更好的滤波效果,通常需要一个由电容和电感组成的滤波电路,例如“π滤波电路”。通常π型滤波电路由两个电容和一个电阻组成,滤波效果较好,因为滤波电路需要大容量的储能电.....

    半导体 日期:2024-04-10

  • 有源回馈整流电压提升,反馈整流器和有源整流器的区别有源回馈整流电压提升,反馈整流器和有源整流器的区别

    使用电流源作为共发射极放大器电路的有源负载可以通过电流源的大交流等效电阻提高输出电压增益。单相桥式整流电路、双绕组全波整流电路和半波整流电路,整流后的电压为空载时的交流电压.....

    半导体 日期:2024-04-10