=LET(_k,DROP(REDUCE("",{"入库","出库"}&"数据",LAMBDA(x,y,LET(_d,INDIRECT(y&"!A2:E999"),VSTACK(x,IFNA(HSTACK(FILTER(_d,TAKE(_d,,1)<>""),y),y))))),1),s_rq,EOMONTH(E2,-1),pm,INDEX(_k,,2),rq,--TAKE(_k,,1),fx,LAMBDA(_rq1,_rq2,_x2,_x3,IFERROR(DROP(GROUPBY(pm,CHOOSECOLS(_k,3,5),SUM,0,0,,(pm=_x2)*(rq>_rq1)*(rq<=_rq2)*(TAKE(_k,,-1)=_x3)),,1),{0,0})),DROP(REDUCE("",UNIQUE(pm),LAMBDA(x,y,VSTACK(x,HSTACK(y,fx(1,s_rq,y,"入库数据")-fx(1,s_rq,y,"出库数据"),fx(s_rq,E2,y,"入库数据"),fx(s_rq,E2,y,"出库数据"),fx(1,E2,y,"入库数据")-fx(1,E2,y,"出库数据"))))),1))
|