C1单元格公式:=NETWORKDAYS(A1,B1,$F$2:$F$10)+COUNTIFS($I$2:$I$3,">="&A1,$I$2:$I$3,"<="&B1),如下图所示

解析:

1、使用NETWORKDAYS函数计算2个日期之间的工作日(去除了周末,但是没有处理调休)

2、使用 countifs 函数加上调休补班的日期

=====================================================================

用到2个函数:

1)NETWORKDAYS

2)COUNTIFS

***********************************************NETWORKDAYS******************************************

NETWORKDAYS(start_date,end_date,holidays)

参数说明:

start_date:表示开始日期。

end_date:表示结束日期。

holidays:在工作日中排除的特定日期。

公式 =NETWORKDAYS(A1,B1,$F$2:$F$10)

表示计算A1,B1这2个日期之间去除周末(周六、周日)以及F2-F10这些日期的天数

*********************************************** CountIfs *************************************************

一、CountIfs函数语法

1、表达式:COUNTIFS(Criteria_Range1, Criteria1, [Criteria_Range2, Criteria2], …)

中文表达式:COUNTIFS(条件区域1, 条件1, [条件区域2, 条件2], …)

2、说明:

A、条件区域和条件组成一个条件区域/条件对,至少包含一个条件区域/条件对,最多只能有 127 个条件区域/条件对。

B、如果有多个条件区域,每个条件区域必须有相同的行数和列数,它们可以不相邻。

C、如果单元格为空,CountIfs 将它的值视为 0。

D、在条件中可以使用通配符问号(?)和星号(*),问号表示任意一个字符,星号表示一个或一串字符;如果要查找问号或星号,需要在它们前面加转义字符~,例如查找问号,表达式可以这样写 ~?。

二、CountIfs函数的使用方法及实例

(一)只有一个条件区域/条件对

1、假如要统计“销售地区”为“广州”的个数。选中 D13 单元格,输入公式 =COUNTIFS(D2:D12,"广州"),按回车,返回统计结果 4;操作过程步骤,如图1所示:

图1

2、公式说明:公式 =COUNTIFS(D2:D12,"广州") 只有一个条件区域/条件对,条件区域为 D2:D12,条件为“广州”,是用文字作条件,并且可以在文字前面加等号,即 =COUNTIFS(D2:D12,"=广州");另外,仅数值也可以作条件。

(二)有两个条件区域/条件对

1、假如要统计“销售地区”为“广州”且销量大于等于 500 的服装件数。把公式 =COUNTIFS(D2:D12,"广州",F2:F12,">=500") 复制到 F13 单元格,按回车,返回统计结果为 3,操作过程步骤,如图2所示:

图2

2、公式中第一个条件区域/条件对为 D2:D12,"广州",第二个条件区域/条件对为 F2:F12,">=500",即先统计 D2:D12 中为“广州”的个数,再统计 F2:F12 中销量大于等于 500 的个数;条件2 ">=500" 也可以用 ">="&500。

(三)用通配符问号与星号组合条件

1、假如要统计以“T恤”结尾、以“白”字开头、仅有三个字的服装件数;把公式 =COUNTIFS(B2:B12,"*T恤",B2:B12,"白*",B2:B12,"???") 复制到 B13 单元格,如图3所示:

图3

2、按回车,返回结果 1,如图4所示:

图4

3、如果要统计以一个指定字(或词)开头且以另一个指定字(或词)结果的服装件数,例如统计以“粉”字开头且以“衬衫”结尾的服装件数,公式可以这样写:=COUNTIFS(B2:B12,"粉*衬衫")。

(四)条件为空、不为空和不等于

1、假如要统计“分类”不等于“衬衫”且“销量”为空的服装件数。把公式 =COUNTIFS(C2:C12,"<>衬衫",F2:F12,"") 复制到 F13 单元格,按回车,返回统计结果 2,操作过程步骤,如图5所示:

图5

2、如果要统计“分类”不等于“衬衫”且“销量”不为空的服装件数,则公式可以这样写:=COUNTIFS(C2:C12,"<>衬衫",F2:F12,"<>"&""),如图6所示:

图6

(五)CountIfs 与 Average 组合使用

1、假如要统计“分类”为“T恤”、销售地区为“杭州”且大于平均销量的服装件数。把公式 =COUNTIFS(C2:C12,"T恤",D2:D12,"杭州",F2:F12,">"&AVERAGE(F2:F12)) 复制到 F13 单元格,按回车,返回结果 2,操作过程步骤,如图7所示:

 

2、在条件中,只需用 & 连接 > 与求平均值的函数 Average,如果要用其它函数也是一样的连接方法。

三、CountIfs函数与CountIf函数用多条件的比较

1、CountIfs函数可轻松组合多个条件,而CountIf函数需要用数组才能组合多个条件。假如要统计销量大于等于 500 且小于等于 800 的服装件数。用 CountIfs函数公式可这样写:=COUNTIFS(F2:F12,">=500",F2:F12,"<=800"),而用 CountIf函数,公式需要这样写:=SUM(COUNTIF(F2:F12,{">=500",">800"})*{1,-1}),两个公式统计结果都为 4;操作过程步骤,如图8所示:

图8

2、用CountIfs函数写要简单得多,且它们的计算顺序是一样的,都先统计满足第一个条件的个数,再统计满足第二个条件的件数,因此遇到多个条件的情况,可以先选用CountIfs函数。

******************************************* END *********************************************

excel2007灵活计算2个日期之间的工作日的更多相关文章

  1. 用VBA计算两个日期之间的工作日(去掉周末两天)

    最近公司HR和Finance想算员工的工作天数,想让我帮忙写些VBA,自己从网上找了下代码,自己再改改,以下来自网络. 计算两个日期之间的工作日,用VBA,因量大,最好用数组做 Sub kk() Di ...

  2. mysql 计算两个日期之间的工作日天数

    创建透视表t500 建表 CREATE TABLE `t500` ( `id` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`id`) ) ENGINE ...

  3. java中计算两个日期之间天数的程序设计。

    //用java编写出一个以下方法计算两个日期之间天数的程序设计. import java.util.regex.Matcher; import java.util.regex.Pattern; pub ...

  4. java计算两个日期之间相隔的天数

    import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; impor ...

  5. java计算两个日期之间相隔的月份(向下取整)

    最近需求里面有个需要计算两个日期之间相隔的月份,写起来还挺繁琐,需要将各种情况都要考虑到,写了一个作为以后自己的工具吧. //获取哪一天 public static int getDay(Date d ...

  6. JS计算两个日期之间的天数

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  7. 计算两个日期之间相差的年数月数天数(JS实现)

    前言 如何计算年龄?我的第一直觉做法:(当前时间戳 - 出生时的时间戳)/ (365*86400)  所得结果向下取整.后来发现这种做法获得的结果不准确,不是多了一岁就是少了一岁,不能简单粗暴的这么处 ...

  8. c#后台计算2个日期之间的天数差

    / 计算2个日期之间的天数差 DateTime dt1 = Convert.DateTime("2007-8-1");  DateTime dt2 = Convert.DateTi ...

  9. 计算两个日期之间相差的天数(带带负数) 支持格式YYYY-mm-dd和YYYY-mm-dd HH:mm:ss

    /** * 计算两个日期之间相差的天数(带带负数) 支持格式YYYY-mm-dd比较 * @param higDate 减数 * @param lowDate 被减数 * @returns 差值天数 ...

随机推荐

  1. springboot docker jenkins 自动化部署并上传镜像

    springboot + docker + jenkins自动化部署项目,jenkins.mysql.redis都是docker运行的,并且没有使用虚拟机,就在阿里云服务器(centos7)运行 1. ...

  2. 【三剑客】awk运算符

    1. 算术运算符:+,-,*,/,% [root@oldboy test]# awk 'BEGIN{a=50;b=20;print "(a+b)=",(a+b)}' (a+b)= ...

  3. 更新mac系统到10.15后,virtual box虚拟机无法打开

    更新mac系统到10.15后,virtual box虚拟机无法打开: 尝试解决方案1:下载最新版的virtual box重新安装后,启动成功. 虽然很乌龙,但是下次再也不随便升级系统了,太坑爹了

  4. 《现代体系结构上的UNIX系统:内核程序员的对称多处理和缓存技术(修订版)》——2.4 双路组相联高速缓存...

    本节书摘来自异步社区<现代体系结构上的UNIX系统:内核程序员的对称多处理和缓存技术(修订版)>一书中的第2章,第2.4节,作者:[美]Curt Schimmel著,更多章节内容可以访问云 ...

  5. require.context的妙用

    比较好用,记录下来. 以下方法将获取vuex中Modules文件夹里的所有modules并导出. const files = require.context(".", false, ...

  6. Shiro(二):Spring-boot如何集成Shiro(上)

    这篇文章主要介绍了spring-boot是如何集成shiro的authentication流程的. 从shiro-spring-boot-web-starter说起 shiro-spring-boot ...

  7. web前端项目中遇到的一些问题总结(08.23更新)

    个人网站 https://iiter.cn 程序员导航站 开业啦,欢迎各位观众姥爷赏脸参观,如有意见或建议希望能够不吝赐教! 写一些最近工作中Vue项目中遇到的问题. 巴啦啦小魔仙,污卡拉,全身变,小 ...

  8. Hadoop学习笔记(二)——插件安装和使用(Hadoop Eclipse)

    1. Hadoop Eclipse @ 配置 需注意 在写Hadoop的根目录时,路径不能有空格 http://blog.sina.com.cn/s/blog_56d8111101014mlg.htm ...

  9. Python高级编程-Python一切皆对象

    Python高级编程-Python一切皆对象 Python3高级核心技术97讲 笔记 1. Python一切皆对象 1.1 函数和类也是对象,属于Python的一等公民 ""&qu ...

  10. 支付宝小程序serverless---获取用户信息(头像)并保存到云数据库

    支付宝小程序serverless---获取用户信息(头像)并保存到云数据库 博客说明 文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢! 我又 ...