哪位大虾能帮忙解释一下EXCEL中的这个函数?

=IF(COLUMN(A1)<=DAY(EOMONTH($D$2,0)),DAY(DATE(YEAR($D$2),MONTH($D$2),COLUMN(A1))),"")
2024-11-21 20:00:48
推荐回答(3个)
回答1:

首选判断COLUMN(A1)<=DAY(EOMONTH($D$2,0))是否为真,如果为真则返回DAY(DATE(YEAR($D$2),MONTH($D$2),COLUMN(A1))),否则返回为空
但由于column(A1)返回A1单元格的列数,始终为1,
EOMONTH($D$2,0)是返回d2单元格这个日期当月最后一天,比如d2=2007-10-25,则EOMONTH($D$2,0)返回2007-10-31,day()求2007-10-31为当月第几天,值为31,1<=31为真
year(),month(),分别为返回年月的函数date为返回日期代码中返回代表日期的数字,则为day(date(2007,10,1)),day返回2007-10-1为当月的第几天,返回为1
所以不论D2单元格中为何值,此函数返回值始终为1

回答2:

DAY(DATE(YEAR($D$2),MONTH($D$2),COLUMN(A1))),DAY返回当前日期年月日的短日期即COLUMN(A1)

回答3:

打开excel按F1键搜索就可以找到最简单的解说