将数据从一个单元格均分为多个单元格的公式

时间:2016-06-16 11:53:11

标签: excel

我有这些细胞:

  • Cell I7,我将完成任务的总小时数,
  • Cell J7具有yyww格式的开始时间,例如1624,意思是2016年和第24周,
  • Cell K7是相同格式的截止日期。

我在第2行中有连续的周数,再次采用相同的格式,例如

  • Cell L2具有1622
  • L2右侧的单元格具有递增的周数:1623,1624,......

我希望将任务所需的总小时数平均分为适当的几周。我在计算开始周和截止日期。如果需要,请使用小数。

此表仅适用于2016年,这意味着我不会跨越年界。例如:

总时间100小时。开始1625,结束1634.对应于代表第1625周的列的单元格:10小时,第1626周:10小时,第1627周:10小时,......长达10周。

我希望将分为几周的小时数显示在同一行中。 恩。 I7 = 50,J7 = 1601,K7 = 1605,L7 = 10,M7 = 10,N7 = 10,O7 = 10,P7 = 10.

enter image description here

2 个答案:

答案 0 :(得分:1)

我提出了一个可以产生这个输出的解决方案:

enter image description here

输入字段位于单元格I7,J7和K7中,如您所述。

L7中的公式要求周数出现在第2行:

=IF( AND(L$2>=$J7, L$2<=$K7), $I7/($K7-$J7+1), "")

该公式可以根据需要向右和向下复制。

当某一天你在2017年第2行添加周数时,所以你混合使用2016年和2017年的数字,那么上述将在跨越年界的期间失败,因为分母($K7-$J7+1)将返回数字太大了。如果你想处理它,你可以使用这个公式:

=IF(AND(L$2>=$J7,L$2<=$K7), $I7/(MATCH($K7,$2:$2;0)-MATCH($J7,$2:$2,0)+1), "")

该公式要求开始和结束周真正发生在第2行。

请注意,列表分隔符的区域设置可能不同。在这种情况下,您可能需要使用分号(;)更改公式中的逗号。区域设置也会影响函数的名称(IFAND)。请检查Excel equivalent is in your language version

答案 1 :(得分:0)

我无法给你一个精确的答案,因为这个问题有点模糊,但至少你需要将输入分解为更有用的格式,然后你可以将其重建成所需的格式。例如,以下公式(改编自here将“1625”转换为“2016年6月12日”:

=INT((DATE("20"&LEFT(B2,2),1,1)+(RIGHT(B2,2)*7)-7)/7)*7+1

其中,单元格B2的值为1625.对于结束日期执行相同操作,然后使用公式NETWORKDAYS()计算这些日期之间的工作日数。然后,您可以计算出每天所需的小时数,或者您的要求。

如果你可以更精确地提出问题,我可以给出一个更完整的答案。例如,您是否想要计算出每周需要多少小时来完成任务,或者您是否想要估算所需的人力,例如每天7个工时?