Excel里的函数各有各的用途,可以说是各司其职。但是偏偏有一些函数不务正业,不是自己的活,非要自己干,今天咱们看看有哪些不务正业的函数。
一、计算日期所在季度
如下图所示,需要根据A列日期计算出该日期所在季度。
B2单元格输入以下公式,下拉:
=LEN(2^MONTH(A2))
这个公式里,MONTH函数是计算月份的,LEN函数是计算字符长度的。
用不同月份作为2的乘幂,然后用LEN函数计算出乘幂的字符长度,正好与所在季度对应。
二、判断今年是不是闰年
A2单元格输入以下公式:
=IF(COUNT(-“2-29″),”是”,”否”)
“2-29″,得到到系统当前年份的2月29日(如果有这个日期),否则得到一个文本。再加上负号计算负数,如果是日期,得到一个负数,如果是文本,则得到错误值。
最后使用COUNT函数判断使用负号计算后的结果是数值还是错误值,如果是数值,说明是闰年,否则就不是闰年了。
三、判断差异变化
如下图所示,要根据B~C列两年的数据,判断变化差异。
D2单元格输入以下公式:
=TEXT(C2-B2,”比上年多0元;比上年少0元;与上年相同”)
TEXT函数是一个文本函数,作用是将数字变成指定格式的文本。
本例中的格式代码为”比上年多0元;比上年少0元;与上年相同”,
格式代码中的0表示第一参数本身。
如果C2-B2的结果大于0,就显示“比上年多n元”。
如果C2-B2的结果小于0,就显示“比上年少n元”。
如果C2-B2的结果等于0,就显示“与上年相同”。
四、快速提取字符
如下图所示,要根据A列的号码,提取减号前的区号。
C2单元格输入以下公式,向下复制:
=0&IMREAL(B2&”i”)
IMREAL函数,用于返回复数的实系数。
先使用B2&”i”将B2单元格中的内容转换为复数形式”010-80808888i”,然后使用IMREAL函数返回复数的实数010。
五、转换时间
如下图所示,B列是加班时长,需要在C列转换为时间格式。转换的要求是将15.3转换为15:30。
C2单元格输入以下公式,下拉。
=DOLLARDE(B2,60)/24
DOLLARDE函数可以将第1参数的分数部分转换为指定进制的小数。
上述公式中,B2是十进制的分数,将小数部分按60进制转换为分钟(1小时有60分钟),再整体除以24(1天有24小时)即为结果。
文章来源于Excel之家ExcelHome ,作者祝洪忠
本文采用「CC BY-SA 4.0 CN」协议转载自互联网、仅供学习交流,内容版权归原作者所有,如涉作品、版权和其他问题请给「我们」留言处理。