本帖最后由 破冰船 于 2025-4-15 14:36 编辑
- =ROUND(DATEDIF(TEXT(IFERROR(TEXT(SUBSTITUTE(A2,".","/"),"yyyy/mm/dd"),DATE(LEFT(A2,4),MID(A2,5,2),RIGHT(A2,2))),"yyyy/mm/dd"),TEXT(IFERROR(LET(d,DATEVALUE(SUBSTITUTE(IF(ISERROR(FIND("至",B2)),IF(ISERROR(FIND("-",B2)),B2,MID(B2,FIND("-",B2)+1,LEN(B2)-FIND("-",B2))),MID(B2,FIND("至",B2)+1,LEN(B2)-FIND("至",B2))),".","/")),IF(ISERROR(d),IF(B2>9999999,DATE(LEFT(B2,4),MID(B2,5,2),RIGHT(B2,2)),B2),d)),DATE(MID(B2,FIND("至",B2)+1,LEN(B2)-FIND("至",B2)-1),1,1)),"yyyy/mm/dd"),"d")/365,0)
复制代码
要老命了 ,这个是没考虑最下面年限向下取整的部分,都按round保留整数了
就像在考试,把各种复杂试题堆到一起,考验解题能力,实操上可以通过加辅助列、数据清洗等方式让操作更简单
|