我正在处理分销问题,分析交付给一组商店(75家商店)的数量。
我有一个Excel文件如下:
如您所见,由于每家商店每天都没有收到货,因此每天都不包含相同的商店。
我想获得一个新表,其中包含列中存储的代码,以及有关行中的卷和里程的信息。此外,我想总结它们属于同一商店的卷的值。在这个例子中,这将是这样的:
可以想象,我的电子表格更大,总共有6500行和800列。我正在考虑使用INDEX / MATCH的函数组合,但我看不出如何在给定日期内对给定商店的多个值求和。
答案 0 :(得分:1)
不要将商店放在列中,使用VBA或类似的方法来读取输入文件并规范化数据,以便输出显示为
的表格Store - Date - Volume - Miles
101 10/06/2016 520 120
102 11/06/2016 500 100
然后,您可以随时查找商店和日期,或稍后转动数据。
答案 1 :(得分:1)
虽然您需要扩展此公式,但您可以使用:
=SUMIF(INDEX($C:$F,MATCH($J2,$A:$A,0),),L$1,INDEX($C:$F,MATCH($J2,$A:$A,0)+MOD(ROW(),2)+1,))
如果表格是这样构建的:
从L2开始,您可以根据需要向下拖动到左侧;)
修改强>
还要去商店:
L1: {=MIN(IF(MOD(ROW($C$1:$F$6),3)=1,$C$1:$F$6))}
这是一个数组公式,必须在没有
{}
的情况下输入,但必须使用 ctrl + shift + 输入进行确认!
M1: =SUMPRODUCT(SMALL(IF(MOD(ROW($C$1:$F$6),3)=1,$C$1:$F$6),SUM((IF(MOD(ROW($C$1:$F$6),3)=1,$C$1:$F$6)<=L$1)*1)+1))
从M1开始,你可以简单地复制到右边。
获取日期(如果不连续或类似的话)
J2: =MIN(A:A)
J3: =J2
J4: =SMALL(A:A,COUNTIF(A:A,"<="&J3)+1)
J5: =J4
然后简单地复制J4:J5:)