日常搬砖中经常有些按月编制的excel表格,我们一般将这个表(sheet)命名为【XXX表YYYY.MM】或者直接使用日期【YYYY.MM】,此时,如果表格中有与sheet名称相关的日期,我们可以构造一个公式,直接生成日期。
举个栗子:
比如我们有一个表名称为【XXX表2022.04】,表中有个单元格是填表日期,日期值为当月最后一天【2022年4月30日】。下一个月复制这个表继续填报时,需要手动将复制后的日期改为【2022年5月31日】。
这里我有一个思路,可以构造出一个公式,使用表名【XXX表2022.04】,自动生成日期【2022年4月30日】,如图:
下面抛出公式:=DATE(LEFT(RIGHT(CELL("filename"),7),4),RIGHT(CELL("filename"),2)+1,0)
解释一下思路和用到的几个公式以及构思步骤:
1.CELL()
函数有一个参数"filename"
,返回当前工作表的完整路径,该路径为文本类型,最后7位【2022.04】正是我们需要的内容,如图:
2.使用RIGHT(CELL("filename"),7)
取出右边7个字符为【2022.04】,再使用LEFT()
函数提取左边4个字符,得到【2022】,到此年份提取完成。
3.使用RIGHT(CELL("filename"),2)
取出右边7个字符为【04】得到月份。
4.下面我们使用DATE()
函数将年份与月份合成日期类型的数据,DATE()
函数使用方法为DATE(YYYY,MM,DD)
,在这里先说明一个DATE()
函数的特性,如果DD
参数为0
时,返回上月的最后一天,我们使用上面的年份表达式替代YYYY
,月份表达式+1后替代MM
,DD
用0
替代。
5.这样就型成了=DATE(LEFT(RIGHT(CELL("filename"),7),4),RIGHT(CELL("filename"),2)+1,0)
。
文本主要还是用到了字符串截取和日期组合,大家在使用中需要根据自己的表名灵活嵌套和配置,小伙伴们赶快试一下吧。
商业转载请联系博主取得许可,个人转载请注明出处。
本文链接:https://rousongs.com/1521.html
不错,经常做表说不定能用上。