MAX、MIN和IF函数,组合使用效果好

哈喽,大家好,今天分享一个关于考勤的函数运用。

需求:根据打卡数据明细,得出每个员工的上下班考勤时间。

效果图如下。

步骤:

【1】计算出上班考勤,即返回每个人的最早打卡时间(最小时间值)。注意,输入公式后,需要按住Ctrl+Shift不放,再按回车。

=MIN(IF(D2=$A$2:$A$27,$B$2:$B$27))

【2】计算出下班考勤,即返回每个人的最晚打卡时间(最大时间值)。

=MAX(IF(D2=$A$2:$A$27,$B$2:$B$27))

公式解说:

(1)D2=$A$2:$A$27,判断在姓名列是否存在D2单元格朱某,如果存在则返回打卡时间列对应的数据,否则逻辑值False。

(2)用Min或Max函数返回步骤(1)数组中的最小或最大值。

(3)Ctrl+Shift+Enter。三键结束,返回结果。

(4)提示:判断的区域和返回的区域 需要绝对引用哦。

如果你使用的是office 2019或者是最新版本的WPS表格,还可以使用MINIFS和MAXIFS函数,试试你能使用这两个函数完成计算吗?

涨知识,MIN函数不同用法

函数MIN:返回一组数值中的最小值。

1、求最小值

计算B列总成绩中的最小值:

输入公式:=MIN(B2:B8)

你以为函数MIN就这个玩法吗?

接下来我们一起来看下函数MIN的一些其他玩法!

2、单条件查找

查找姓名为“爱知趣”的总成绩:

输入公式:=MIN(IF(A:A=D2,B:B))

数组公式,按<Ctrl+Shift+Enter>三键结束!

使用函数MIN进行查找时要注意以下两点:

①条件区域的数据必须是唯一的(如果不是唯一的,其结果返回的是最小的那个);

②查找返回的结果必须是数字。

3、按条件求最小值

求姓名为“爱知趣”的最小总成绩:

输入公式:=MIN(IF(B:B=E2,C:C))

数组公式,按<Ctrl+Shift+Enter>三键结束!

与上例不同的是,B列的姓名不是唯一的,姓名中有多个“爱知趣”,其结果返回的是最小的那个。

4、多条件查找

查找班级为“一班”且姓名为“爱知趣”的总成绩:

输入公式:

=MIN(IF(A:A=E2,IF(B:B=F2,C:C)))

数组公式,按<Ctrl+Shift+Enter>三键结束!

5、求平均值

求三科成绩都大于等于60分的平均值:

输入公式:

=MIN(B2>=60,C2>=60,D2>=60)*AVERAGE(B2:D2)

MIN(B2>=60,C2>=60,D2>=60)部分若三科成绩中有一科成绩小于60分,函数MIN部分将返回0;只有当三个条件都成立时才返回1,也就是说三科成绩都大于等于60分时才返回对应平均值。

6、容错

如下图,计算金额:

输入公式:=B2*C2

单价为文本的,其金额返回错误值#VALUE!,遇到这种情况,该怎么规避错误值呢?

excel中有专门的容错函数,比如使用函数IFERROR:

其实,使用函数MIN也可以:

输入公式:=MIN(B2)*MIN(C2)

函数MIN可以忽略逻辑值及文本。

7、根据上下限计算提成

提成低于1000元的,按1000元计算;

提成在1000-5000元之间的,按实际提成计算;

提成超过5000元的,按上限5000元计算。

输入公式:

=MIN(MAX(1000,B2),5000)

MAX(1000,B2)部分将B2单元格提成622与下限1000进行比较,返回最大值,即返回1000;

将1000与上限5000进行比较,用函数MIN返回最小值,即返回1000。

MIN(MAX(下限,提成),上限)

Excel统计函数——MIN函数详解

函数功能

MIN函数用于返回数据集中的最小值。

函数语法

MIN(number1,number2,…)

参数解释

number1,number2,…:表示要找出最小数值的1~30个数值。

实例1 返回100米跑中用时最短的次数编号

表格中统计了100米跑中10次测试的成绩,要求快速判断出哪一次的成绩最好(即用时最短)。

选中D2单元格,在公式编辑栏中输入公式:

=\”第\”&MATCH(MIN(B2:B11),B2:B11,0)&\”次\”

按“Enter”键得出结果,如图1所示。

图1

公式解析

①求B2:B11单元格区域中的最小值。

②MATCH函数(用于返回在指定方式下与指定数值匹配的数组中元素的相应位置)返回步骤①返回值在B2:B11单元格区域的第几行中。

实例2 显示不超过限定日期的动态时间

表格中设置了限定日期,下面需要在B2单元格中设置公式来显示一个不超过限定日期的时间。

选中B2单元格,在公式编辑栏中输入公式:

=MIN(A2,TODAY())

按“Enter”键得出一个动态随机日期,如图2所示。

图2

公式解析

=MIN(A2,TODAY())

设置A2单元格中的限定日期为2013年7月18日,然后使用MIN函数将任意随机日期与给定的限定日期相比较,并提取出其中的最小值。

实例3 根据工龄计算可休假的天数

某公司规定:A级别的员工工龄满一年可享受5天的假期,B级员工工龄满一年可享受4天假期,C级员工工龄满一年可享受3天假期,并且每个级别每增加一年工龄即可增加一天的休假天数,最高不得超过10天。

➊ 选中D2单元格,在公式编辑栏中输入公式:

=MIN(SUM((B2={\”A\”,\”B\”,\”C\”})*{5,4,3})+(C2-1),10)

按“Enter”键即可根据第一位员工的级别和工龄得出休假天数。

➋ 将光标移到D2单元格的右下角,光标变成十字形状后,向下复制公式,即可计算出其他员工的可休假天数,如图3所示。

图3

公式解析

①将B2单元格的员工级别与级别常量数组进行比较,可以得到由TURE和FALSE组成的数组,将此数组与可休假天数相乘,则将FALSE转换为0,并将TURE转换为休假天数。得出第一年对应的假期天数后,再将C2中的工作时间减去1得到其余时间的可休假天数。两者相加即为员工的可休假天数。

②利用SUM函数取出天数。

③ 由于规定不能超过10天,利用MIN函数取前面步骤得出的结果与10点之间的最小值。

实例4 忽略0值求出最低分

表格中统计了学生的成绩(成绩中包含0值),要求忽略0值返回最低分数。

选中E2单元格,在公式编辑栏中输入公式:

=MIN(IF(C2:C9<>0,C2:C9))

按“Shift+Ctrl+Enter”组合键得出除0之外的最低分,如图4所示。

图4

公式解析

①筛选出C2:C9单元格区域中大于或者小于0的分数值。

②将步骤①中返回TURE的结果对应在C2:C9单元格区域中的数据集进行求最小值计算。

本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com

点赞 0
收藏 0

文章为作者独立观点不代本网立场,未经允许不得转载。