1、先讲我的处理方式,我会把A列合并单元格拆了,把空格补齐,然后再用格式刷刷成合并的样式,然后用sumifs取数,条件1是仓库,条件2是Q2:Q8,月份用于列定位,Indirect+address+match方式,整体的公式是【SUMIFS(INDIRECT(ADDRESS(1,MATCH($Q$2,$A$1:$O$1,))&":"&ADDRESS(1000,MATCH($Q$2,$A$1:$O$1,))),$A$1:$A$1000,R$2,$B$1:$B$1000,$Q3)】
2、其次按你的Vlook方式,第一A列用了单元格内回车,找不到【所有存货】的位置,MATCH(R$2,$A:$A,0)结果会是NA错误,这是错误①;Q3:Q8对应的是B列区域,但单元格内全角半角不分(这是②);【库存金额(万元)】猜测=【实际库存金额(万元)】这是③;【环比(库存金额)】应该是【环比(存货金额)】这是④;【呆滞120天总额】应该=【呆滞120天金额】这是⑤;
修复①、②、③、④、⑤之后再来看查找函数,一般有3/取数方式,1是给定一个区域,按列或者行去"捞“指定条件的数,比如Vlookup,Hlookup;2是给定一个区域抓指定位置的数,Index属于这种;3是赋予一个原点,然后通过位移取数,比如Offset。无论哪种方式,都会绕不开区域和定位,也就是说要么构建一个满足条件的区域取数,要么从"原点”跳到一个满足条件的点获取值。
先看构建区域,就有区域的横向和纵向,以R3为例,单元格结果应该【VLOOKUP(Q3,B2:N10,7,0)】或者【INDEX(B2:N10,2,7)】公式结果,这俩个公式统一的第1个难点是获取【B2:N7】区域,第2个难点是定位获取2(行)和7(列),我们逐一来看:
第1个难点获取【B2:N7】区域:要构建R2:R8单元格区域,可通过Offset移位去做【OFFSET(A1,1,1,9,13)】如下图,A1单元格向下1行,像右移1列,构建一个9行*13列的区域,也就是【B2:N7】区域,向下偏移的1=【MATCH(R2,A:A,)-1】,向右偏移的1是因表格设置决定的,而且后续其他公式也是如此,可直接输入"1",9行这个需要通过"立体仓"的定位去-1,即=MATCH(S2,A:A,)-1,再减去表头占用的第一行,【MATCH(S2,A:A,)-2】,9列和第二个1一样,输入常数即可;S:X列公式区域定位上更复杂,后续再解决。
第2个难点获取2(行)和7(列)定位:横向7(列)的定位是依靠Q2做时间定位就可解决【MATCH($Q$2&"月",$A$1:$O$1,)-1】;纵向2(行)【MATCH(Q3,B2:B10,)】可解决,S:X列公式在纵向定位会有难度,这里先讲基本的后续再解决;要用INDEX取数的话,要根据Q3:Q10做一个定位【MATCH($Q3,$B$1:$B$10,)-1】。结合起来,考虑公式下拉问题,R3的公式为:
【VLOOKUP($Q3,OFFSET($A$1,MATCH(R$2,$A:$A,)-1,1,MATCH(S$2,$A:$A,)-2,13),MATCH($Q$2&"月",$A$1:$O$1,)-1,0)】,或
【INDEX(OFFSET($A$1,MATCH(R$2,$A:$A,)-1,1,MATCH(S$2,$A:$A,)-2,13),MATCH($Q3,$B$1:$B$10,)-1,MATCH($Q$2&"月",$A$1:$O$1,)-1)】
看起来看Index要多取一次定位,更复杂一点,后续就只讲Vlookup。原文想的是用【INDEX($B:$B,MATCH(R$2,$A:$A,0)):$N$100】,说实话我没有看懂这个是什么用法,感觉并没有理解函数意义。
R3:R10公式处理好后,我们看S3:S10,这部分的难点还是区域定位,区域应该是B11:N22,也就是【OFFSET($A$1,10,1,12,13)】,10可以通过查找“立体仓”在A列定位11再-1(表头行),即【MATCH(S$2,$A:$A,)-1】,12还是之前的法子,先找“零部件仓”的定位得到23【MATCH(T$2,$A:$A,)】(发现A列又对不上!),23-11=12,结合得到【MATCH(T$2,$A:$A,)-MATCH(S$2,$A:$A,)】,Offset函数是【OFFSET($A$1,MATCH(S$2,$A:$A,)-1,1,MATCH(T$2,$A:$A,)-MATCH(S$2,$A:$A,),13)】;列取数还是R3的法子,【VLOOKUP($Q3,OFFSET($A$1,MATCH(S$2,$A:$A,)-1,1,MATCH(T$2,$A:$A,)-MATCH(S$2,$A:$A,),13),MATCH($Q$2&"月",$A$1:$O$1,)-1,0)】,下拉公式发现【立体仓B11:N22】没有【环比(存货金额)】,这个老板自己去稽核。
最后把立体仓贴到刚刚的R2:R8区域,数据和刚刚计算吻合,往右拖到X2:X8区域,X列错误在A63和Y2单元格各补一个"完"结束。
|