Google 工作表或 Excel 函数 return 基于值的日期
Google Sheets or Excel Function to return date based on value
我在 Google 表格(或 excel)中有此 table。年份是我代码的最后两位。
Code Duration Months
1 AC-26482-17 60
2 AC-26482-18 30
3
我想return这种格式的日期(如果没有数据,就留空)。
Code Duration Months Start Expiration
1 AC-26482-17 60 01/01/2017 01/01/2022
2 AC-26482-18 30 01/01/2018 01/07/2020
3
有办法实现吗?
您是说要将以月为单位的持续时间添加到开始日期?如果是这样,则您的样品的有效期有误。 1/1/2018 加上 30 个月不是 6 月 1 日,而是 7 月 1 日。
Excel中的公式为
=EDATE(C2,B2)
如果您还想从代码的最后两个字符计算开始日期,假设所有日期都在这个千年内,那么您可以使用这个作为开始日期:
=DATE(RIGHT(A2,2)+2000,1,1)
编辑:要处理空白单元格,您可以使用 IsBlank()
检查
=if(isblank(a2),"",DATE(RIGHT(A2,2)+2000,1,1))
使用:
=ARRAYFORMULA(IF(A2:A="",,DATE(IF(RIGHT(A2:A, 2)*1>=40,,20)&RIGHT(A2:A, 2), 1, 1)))
=ARRAYFORMULA(IF(A2:A="",,DATE(YEAR(C2:C), MONTH(C2:C)+B2:B, 1)))
我在 Google 表格(或 excel)中有此 table。年份是我代码的最后两位。
Code Duration Months
1 AC-26482-17 60
2 AC-26482-18 30
3
我想return这种格式的日期(如果没有数据,就留空)。
Code Duration Months Start Expiration
1 AC-26482-17 60 01/01/2017 01/01/2022
2 AC-26482-18 30 01/01/2018 01/07/2020
3
有办法实现吗?
您是说要将以月为单位的持续时间添加到开始日期?如果是这样,则您的样品的有效期有误。 1/1/2018 加上 30 个月不是 6 月 1 日,而是 7 月 1 日。
Excel中的公式为
=EDATE(C2,B2)
如果您还想从代码的最后两个字符计算开始日期,假设所有日期都在这个千年内,那么您可以使用这个作为开始日期:
=DATE(RIGHT(A2,2)+2000,1,1)
编辑:要处理空白单元格,您可以使用 IsBlank()
检查=if(isblank(a2),"",DATE(RIGHT(A2,2)+2000,1,1))
使用:
=ARRAYFORMULA(IF(A2:A="",,DATE(IF(RIGHT(A2:A, 2)*1>=40,,20)&RIGHT(A2:A, 2), 1, 1)))
=ARRAYFORMULA(IF(A2:A="",,DATE(YEAR(C2:C), MONTH(C2:C)+B2:B, 1)))