1 CEILING函数 公式=TEXT(CEILING(MONTH(A2)/3,1),'[dbnum1]第0季度') MONTH(A2)/3得到以下一组数字 0.333333333 0.666666667 1 1.333333333 1.666666667 2 2.333333333 2.666666667 3 3.333333333 3.666666667 4 然后用CEILING沿绝对值增大的方向向上舍入为最接近的指定基数的倍数,这里的第二参数是1,即向上舍入到1的倍数的数字。当然,也可以用ROUNDUP等其他函数。 最后嵌套TEXT函数,使CEILING得到的数字转换成汉字格式显示季度。 2 LEN函数 公式=TEXT(LEN(2^MONTH(A2)),'[dbnum1]第0季度') LEN是文本函数,怎么和日期扯上关系了呢?我们用辅助列E2=2^MONTH(A2)往下复制12行,得到如下数字 2 4 8 16 32 64 128 256 512 1024 2048 4096 仔细观察,这些数字的长度正好符合四个季度的规律,嵌套LEN就可以轻松得到四个季度的数字,最后嵌套TEXT转换格式。 3 LOOKUP函数 公式=TEXT(LOOKUP(MONTH(A2),{1,4,7,10},{1,2,3,4}),'[dbnum1]第0季度') 用MONTH转换的月份数字作为LOOKUP第一参数,在第二参数{1,4,7,10}中查找小于等于查找值的最大值,返回第三参数对应的数字匹配季度,最后嵌套TEXT转换格式。 4 VBA代码 Sub 季度() For i = 2 To 13 If Month(Cells(i, 1)) < 4 Then Cells(i, 4) = '第一季度' ElseIf Month(Cells(i, 1)) < 7 Then Cells(i, 4) = '第二季度' ElseIf Month(Cells(i, 1)) < 10 Then Cells(i, 4) = '第三季度' Else Cells(i, 4) = '第四季度' End If Next End Sub 用MONTH取得日期列中月份的数字做逻辑对比,条件满足<4返回第一季度,条件满足<7返回第二季度,条件满足<10返回第三季度,否则返回第四季度。 好了,今天的分享就是这些,小伙伴们下载示例文件动手练一练,印象会更深刻。 图文制作:心电感应 |
|
来自: hercules028 > 《excel》