如何根据不规则的工作日计算每周更改,例如包含四个工作日的周数?
如果一周只有四天,我正在考虑'countif',然后做sum(day1:day4) on change%'s data
。
如果有五天,那么sum(day1:day5)
。
但是,我无法以代码格式编写此代码。
在下面的答案中,有必要在数据范围(weeknum
和weekday
)加上Weekly Lookup Helper Table
创建两个额外的列(必要时可以隐藏)。帮助者表可以在单独的表格上;它可以/应该是52行(每个工作周一个)。
公式是: 工作日数据范围
=weeknum(A2,1)
=weekday(A2)
User input
=(C2-C3)/C3
=IF(ISERROR(vlookup(B2&" "&C2,$H$4:$K$7,4,false)), "", vlookup(B2&" "&C2,$H$4:$K$7,4,false))
查找表
=I4&" "&J4
=maxifs($C$2:$C,$B$2:$B,I4)
=sumif($B$2:$B,I4,$E$2:$E)
逻辑
帮手表
帮助表非常重要。
maxifs
:这将提取每周数字的最大工作日。
Weekly Change
:按周数汇总每日变化。查找键只是“week”和“maxifs”值的串联;这将是一个独特的价值。
工作日范围
"weeknum"
和"weekday"
为每一天创造相关价值。
Friday weekly change
是一个在weeknum / weekday上搜索的vlookup函数(作为字符串),搜索范围是帮助表。 weeknum和weekday的组合将是一个唯一值,使vlookup成功。