我想将某个值(D4:D6
)按其开始日期和结束日期(B4:C6
)平均分配给周数(E3:J3
),如示例所示。
公式/vba脚本应执行以下操作:
- 检查开始日期和结束日期的周数
- 将该值除以开始日期和结束日期之间的周数
- 将匹配列中的值放在同一行中
以文本格式复制的示例:
2017 2018
Start End Value 50 51 52 1 2 3
26.12.2017 04.01.2018 20 - - 10 10 - -
12.12.2017 24.12.2017 50 25 25 - - - -
11.12.2017 10.01.2018 60 12 12 12 12 12 -
也很高兴关于如何实现单个步骤的提示/想法。
1条答案
按热度按时间b4lqfgs41#
概念验证:
将以下公式放入E4中,并从右向下复制
这是一个由多个单元格组成的公式,我用这些公式来代替上面的公式。分解如下。
步骤1
找出开始周数,将以下内容放入B8。
步骤2
找出结束周数,将以下内容放入C8。
步骤3
确定一年中的最大周数。感谢罗恩·罗森菲尔德给出这个公式。将以下内容放入D8。
步骤4
确定周是在同一年还是在下一年。将以下内容放入E8。
步骤5
确定周数。将以下内容放入F8。
第六步
计算每周的平均值。将以下内容放入G8。
步骤7
确定平均值是否属于日期标题或值0(如果您需要实际的破折号,而不仅仅将0格式化为破折号,则将0更改为-)。将以下公式置于H8中。
根据需要将H8公式复制到右侧和下方。
警告:将工作1年的蔓延在工作周。我有严重的怀疑,它将工作超过多年的开始和结束周。
台阶布置