如何在 MS Excel 2003 中检查一个人的生日是否在任何一个月的 15 日之后?如果生日在 15 日之后,则应显示下个月的第一个日期。如果在 15 日之前,则应显示该月的第一个日期。
问问题
1223 次
4 回答
4
=DATE(YEAR(A1);IF(DAY(A1)<=15;MONTH(A1);MONTH(A1)+1);1)
您可能需要将逗号替换为分号,具体取决于您的语言环境
(DATE函数可以取month=13并递增年份,非常方便)
于 2013-06-25T06:17:05.890 回答
2
年底要小心!
=MONTH("31.12.2013") + 1 将返回 13!
最好使用 EOMONTH 函数。假设 The bithday 日期存储在 D9 中:
=IF(DAY(D9)<=15;EOMONTH(D9;-1) + 1;EOMONTH(D9;0)+1)
于 2013-06-25T06:36:14.813 回答
1
不清楚如果生日正好是 15 岁会发生什么?下个月还是这个月?无论哪种方式,您都可以减去 15,然后找到月末并加 1,即使用 EOMONTH 函数
=EOMONTH(A1-15,0)+1
或避免使用 EOMONTH(因为它需要 Excel 2003 中的 Analysis ToolPak),您可以使用
=DATE(YEAR(A1-15),MONTH(A1-15)+1,1)
如果生日是 15 日,那么这两个都会给出当前月份 - 如果应该是下个月正好 15 日,那么将公式中 -15 的实例更改为 -14
于 2013-06-25T10:13:48.887 回答
1
可能是这样的:
=IF(DAY(A1)>15;DATE(YEAR(TODAY());MONTH(A1)+1;1);DATE(YEAR(TODAY());MONTH(A1);1))
生日日期在A1
.
于 2013-06-25T06:15:58.477 回答