求Google Sheets按年份递增生成墨西哥非工作日序列的公式
Google Sheets 墨西哥节假日自动生成公式
以下公式可直接内嵌所有基础节假日的月日信息,自动生成从2022年起至当前年份的所有对应节假日日期,后续年份打开表格时会自动更新生成:
=ARRAYFORMULA( DATE( FLATTEN(SEQUENCE(YEAR(TODAY())-2022+1, 1, 2022)), MONTH(DATEVALUE(TRANSPOSE({"01-Jan","06-Feb","20-Mar","14-Apr","01-May","16-Sep","20-Nov","01-Dec","12-Dec","25-Dec"}))), DAY(DATEVALUE(TRANSPOSE({"01-Jan","06-Feb","20-Mar","14-Apr","01-May","16-Sep","20-Nov","01-Dec","12-Dec","25-Dec"}))) ) )
公式说明
- 年份序列生成:
SEQUENCE(YEAR(TODAY())-2022+1, 1, 2022)会自动生成从2022年到当前年份的整数序列,比如2023年时生成[2022,2023],2024年时自动扩展为[2022,2023,2024]。 - 基础节假日解析:通过
DATEVALUE将内嵌的月日文本(如"01-Jan")转换为临时日期,再用MONTH和DAY提取对应的月份、日期数字。 - 日期组合与扁平化:
FLATTEN实现年份与节假日月日的笛卡尔积组合,配合DATE函数生成完整日期,ARRAYFORMULA让公式批量处理所有组合并输出结果。
自定义调整
如果需要生成未来N年的节假日,只需修改SEQUENCE的第一个参数。例如要生成到当前年份+1年的日期,将公式中的YEAR(TODAY())-2022+1改为YEAR(TODAY())-2022+2即可。
内容的提问来源于stack exchange,提问作者Union Movil
相关产品推荐
相关产品推荐

