【发布时间】:2020-05-07 00:04:53
【问题描述】:
我正在尝试在 Excel 中创建一个自动日历,根据我经理的偏好,它会自动计算部门活动的关键日期。
为此,我首先根据某些值/偏好或排除项(例如:避免周末、公司假期等)创建一个关键日期表。由于我们是财务部门,因此我正在尝试为每个新月的前 5 个工作日创建一个关闭日列表。我有以下公式可以准确计算收盘日以进行测试,但是当我尝试将其更改为下面显示的后期动态范围时,我收到公式错误。
作品:
=IF(OR(AND(DAY([@Date])<8,[@[Day of Week]]<>"Sat",[@[Day of Week]]<>"Sun",[@Holiday]<>"Holiday Date"),AND(DAY([@Date])=8,COUNTIF($C$5:$C$12,"Holiday Date")>0)),"Closing Day","")
用于查找新月第一天的行号,用于动态搜索公司假期:
ROW(INDEX([Holiday], MATCH(DATE(2020,MONTH([@Date]),1), [Date], 0)))
范围将是
ROW(INDEX([Holiday], MATCH(DATE(2020,MONTH([@Date]),1), [Date], 0)))+7
不起作用:
=IF(OR(AND(DAY([@Date])<8,[@[Day of Week]]<>"Sat",[@[Day of Week]]<>"Sun",[@Holiday]<>"Holiday Date"),AND(DAY([@Date])=8,COUNTIF(CONCATENATE("C",ROW(INDEX([Holiday], MATCH(DATE(2020,MONTH([@Date]),1), [Date], 0))),":C",ROW(INDEX([Holiday], MATCH(DATE(2020,MONTH([@Date]),1), [Date], 0)))+7),"Holiday Date")>0)),"Closing Day","")
我要添加的唯一部分是上面的斜体动态范围引用,它引用了在新月份的前 7 天内出现假期的单元格,以查看第八天是否应该被视为结束日。当我添加此 CONCATENATE 范围时,我收到一个错误,即公式存在问题。但是,当我在 COUNTIF 语句中使用静态范围时,它会起作用。
任何建议,或确定我如何完成此任务的替代方法,将是最有帮助的。
更改日志: ** 更新表格图片 ** ** 想附上样表,但无法附上文件 **
【问题讨论】:
-
如果可以,请发布示例文件。
-
@RicardoDiaz 我已经制作了一个示例表,但我似乎没有办法将其直接附加到论坛帖子中。
-
您可以使用onedrive或google drive并发布链接
-
@RicardoDiaz, link
标签: excel date dynamic range formula