Excel公式:列出两个日期之间的节假日
如果有一个包含节假日及其对应日期的表格,如何在Excel中列出给定日期范围内的所有节假日呢?本文介绍了一种数组公式来实现这一目标。
通用公式
语法和参数
开始日期、结束日期:你希望列出节假日的两个日期。 |
日期:一个引用节假日日期的范围。 |
节假日:一个引用节假日的范围。 |
返回值
如果在给定日期范围内没有找到节假日,公式将返回空白;否则,它将返回相应的节假日。
备注
TEXTJOIN函数仅在Office 365、Excel 2019及更高版本中可用。
公式的工作原理
数据列表如下:B3:B6,列出节假日;C3:C6,列出节假日的日期;F2:放置开始日期;F3:放置结束日期;E4:列出开始日期和结束日期之间的节假日。
请使用以下公式:
按住 Shift 和 Ctrl 键以获取正确结果。
解释
IF函数:用于测试条件并返回TRUE或FALSE,或者可以指定特定文本以代替TRUE和FALSE显示。
TEXTJOIN函数:用分隔符将两个或多个值连接在一起。
该公式可以分为三个部分进行分析:
{IF(C3:C6<=F3,$B$3:$B$6,"")}:查找哪些节假日的日期早于或等于结束日期,在这个数组中,可以看到结果是{"新年";"独立日";"感恩节";""}。
{IF(C3:C6>=F2,IF(C3:C6<=F3,$B$3:$B$6,""),"")}, 根据上述公式,这部分可以看作:
{IF(C3:C6>=F2,{"新年";"独立日";"感恩节";""},"")}:查找哪些节假日的日期晚于或等于开始日期。在这个数组中,可以看到结果是{"";"独立日";"感恩节";""}。
{TEXTJOIN(", ",TRUE,IF(C3:C6>=F2,IF(C3:C6<=F3,$B$3:$B$6,""),""))}, 现在整个公式可以看作:
{TEXTJOIN(", ",TRUE, {"";"独立日";"感恩节";""})}, 它用逗号将值连接在一起,并忽略空值。
相关公式
- 检查日期是否为最近N个月从今天起:假设你需要检查员工入职日期是否为从今天算起的最近6个月,你可以使用由AND、EOMONTH和TODAY函数组合而成的公式快速完成任务。
- 检查日期是否为最近N天内:要检查产品是否今天到期,你可以使用公式检查生产日期是否为最近7天内。
- 将月份名称转换为数字:本教程提供了一个将月份名称转换为相应月份数字的公式。
- 获取去年或明年的同一天:本教程提供了两个公式,分别根据给定日期获取去年和明年的同一天。
相关函数
- Excel DATE函数:使用年、月和日创建日期
- Excel YEAR函数:以4位序列号格式返回日期中的年份
- Excel MONTH函数:MONTH函数用于从日期中获取月份作为整数(1到12)
- Excel DAY函数:DAY函数从日期中获取天数作为数字(1到31)
- Excel WORKDAY函数:向给定日期添加工作日并返回工作日
最佳的办公生产力工具
Kutools for Excel - 助您脱颖而出
🤖 | Kutools AI 助手:基于以下功能彻底改变数据分析方式:智能执行 | 生成代码 | 创建自定义公式 | 分析数据并生成图表 | 调用Kutools函数… |
热门功能: 查找、高亮或标记重复项 | 删除空行 | 合并列或单元格而不丢失数据 | 四舍五入无需公式 ... | |
超级VLookup: 多条件 | 多值 | 跨多个工作表 | 模糊查找... | |
高级下拉列表: 简易下拉列表 | 级联下拉列表 | 多选下拉列表... | |
列管理器: 添加指定数量的列 | 移动列 | 切换隐藏列的可见状态 | 比较列以 选择相同和不同的单元格 ... | |
精选功能:网格聚焦 | 设计视图 | 增强编辑栏 | 工作簿与工作表管理器 | 资源库(自动文本) | 日期提取 | 合并数据 | 加密/解密单元格 | 按列表发送电子邮件 | 超级筛选 | 特殊筛选(筛选粗体/斜体/删除线...) ... | |
排名前15的工具集: 12个 文本 工具(添加文本,删除特定字符 ...) | 50多种 图表 类型(甘特图 ...) | 40多种实用 公式(基于生日计算年龄 ...) | 19个 插入 工具(插入二维码,从路径插入图片 ...) | 12个 转换 工具(小写金额转大写,汇率转换 ...) | 7个 合并与拆分 工具(高级合并行,分割Excel单元格 ...) | ... 还有更多 |
Kutools for Excel拥有超过300种功能,确保您需要的功能只需一键即可实现...
Office Tab - 在Microsoft Office(包括Excel)中启用标签式阅读和编辑
- 一秒内切换数十个打开的文档!
- 每天为您减少数百次鼠标点击,告别鼠标手。
- 在查看和编辑多个文档时,您的工作效率将提高50%。
- 为Office(包括Excel)带来高效的标签页,就像Chrome、Edge和Firefox一样。