不管事什么公式、代码,都是依赖一定的环境才能发挥实际的作用,你也只给公式,很难有人能猜得到公式的实际作用是什么。
如果是你自己打算深入细致研究一下公式的逻辑思路,可以通过“公式求值”这个功能来逐步分解多层嵌套、语句较长的公式
具体步骤:光标定位含有公式的单元格(不需要激活编辑状态),菜单栏“公式”,“公式求值”,这样就可以分步骤查看公式逻辑了
这个公式好无聊,只要D2单元格填的是正常日期,结果永远为1。假设D2="2018-02-07",解释如下:
COLUMN(A1): 意思是单元格A1所在列,很显然是第一列,所以值为1
EOMONTH($D$2,0): 返回D2单元格所填日期所在月份的最后一天,本例为2018年2月份最后一天,EOMONTH($D$2,0)="2018-02-28"
YEAR($D$2), MONTH($D$2), DAY($D$2): 分别返回D2日期的年、月、日
DAY(EOMONTH($D$2,0)): EOMONTH()外面套一层DAY(),EOMONTH()="2018-02-28",然后DAY("2018-02-28")=28
DATE(YEAR($D$2),MONTH($D$2),COLUMN(A1)): DATE()函数定义一个日期,年、月和D2单元格相同,日为COLUMN(A1)=1,即2月份第一天"2018-02-01"
DAY(DATE(YEAR($D$2),MONTH($D$2),COLUMN(A1))): 返回DATE()函数返回"2018-02-01",然后DAY("2018-02-01")=1
整体逻辑:if(1<="D2日期所在月最后一天", 1, 0),条件肯定成立,所以总是返回1