如何在单个单元格中填入起止日期之间的所有日期并以逗号分隔
解决方案
Excel 365/2021及以上版本(支持动态数组)
直接在目标单元格输入以下公式即可,无需提前存储日期到其他单元格:=TEXTJOIN(",",TRUE,TEXT(SEQUENCE(B2-A2-1,,A2+1),"e/m/d"))
参数说明:
SEQUENCE(B2-A2-1,,A2+1)自动生成从A2次日开始、到B2前一日结束的所有日期对应的整数序列,长度刚好等于你需要的日期总数TEXT()函数将整数序列转换为你需要的日期格式,可按需调整格式参数,比如改为"yyyy-mm-dd"即可输出2024-01-01格式的日期TEXTJOIN第二个参数设为TRUE可自动跳过空值,避免生成多余的逗号
旧版本Excel(2019及以上,无动态数组功能)
输入以下公式后,按Ctrl+Shift+Enter三键结束,触发数组计算:=TEXTJOIN(",",TRUE,TEXT(ROW(INDIRECT(A2+1&":"&B2-1)),"e/m/d"))
注意:2016及更早版本Excel无原生TEXTJOIN函数,无法使用该方案,需借助辅助列或VBA自定义函数实现。
内容的提问来源于stack exchange,提问作者Joe Pringle
相关产品推荐
相关产品推荐

