EXCEL,检索各个子表格中对应名字、日期的业绩?

如图所示,从三个子表格中找到上面姓名单元格内对应员工的对应日期的业绩,并可以下拉填充的公式。可以的话请告诉我哪部分是干啥的,因为真正的表格并不是这样的,所以我应该需要改公式里面的条件啥的,十分感谢

如果必须按你的表格样式来做的话

B3=SUMPRODUCT((LOOKUP(ROW($A$3:$A$30),ROW($A$3:$A$30)/(Sheet1!$A$3:$A$30<>""),Sheet1!$A$3:$A$30)=A3)*(Sheet1!$B$3:$B$30=B$1)*Sheet1!$C$3:$C$30)+SUMPRODUCT((LOOKUP(ROW($A$3:$A$30),ROW($A$3:$A$30)/(Sheet2!$A$3:$A$30<>""),Sheet2!$A$3:$A$30)=A3)*(Sheet2!$B$3:$B$30=B$1)*Sheet2!$C$3:$C$30)+SUMPRODUCT((LOOKUP(ROW($A$3:$A$30),ROW($A$3:$A$30)/(Sheet3!$A$3:$A$30<>""),Sheet3!$A$3:$A$30)=A3)*(Sheet3!$B$3:$B$30=B$1)*Sheet3!$C$3:$C$30)

下拉公式填充,然后复制B列公式部分单元格,粘贴到E列和H列相同位置即可。

因水平有限,不能一次汇总三个表,我的思路是分别对三个表统计,上面公式分三部分,每一部分统计一个表,下面是统计Sheet1

=SUMPRODUCT((LOOKUP(ROW($A$3:$A$30),ROW($A$3:$A$30)/(Sheet1!$A$3:$A$30<>""),Sheet1!$A$3:$A$30)=A3)*(Sheet1!$B$3:$B$30=B$1)*Sheet1!$C$3:$C$30)

SUMPRODUCT里第一个括号内是找出合并单元格里哪些是属于同一日期的,第二个括号是找出哪些是等于对应姓名的,最后是求和区域。

把其中的Sheet1改成Sheet2就是统计第二个表,中间用+相连,以此类推,有多少表就连多少段就行了。

技术不够,体力来凑。

姑且做个抛砖引玉的作用吧。



如果你的数据源表格里的日期不是合并单元格的话,那就简单多了,顺便说一下要想把数据源表格里日期快速整理成下图那样,先选中所有日期,然后取消合并单元格,这时鼠标不要点任何位置,按CTRL+G,定位条件,空值,确定。然后输入等号=,再按一下上箭头,再按CTRL+回车,这样就快速把合并单元格转换成下图中的样式了。

假设你的每张数据源表格都如下

下图B3=SUM(SUMIFS(INDIRECT("Sheet"&{1,2,3}&"!$C$3:$C$30"),INDIRECT("Sheet"&{1,2,3}&"!$A$3:$A$30"),A3,INDIRECT("Sheet"&{1,2,3}&"!$B$3:$B$30"),B$1))

可能需要按CTRL+SHIFT+回车

然后,还是下拉填充,然后复制B列公式单元格,粘贴到其他列里。

如果有更多的表的话,将大括号里的数据按样子增加就可以了。比如有5个表,那将公式里的{1,2,3}改成{1,2,3,4,5},以此类推。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2022-03-12
很简单,就是从sheet1,2,3三个表格中的日期区域分别查到每个姓名对应的日期、业绩,然后求和汇总,=sum(VLOOKUP(姓名,sheet1!日期范围,业绩)+VLOOKUP(姓名,sheet2!日期范围,业绩)+VLOOKUP(姓名,sheet3!日期范围,业绩)+))),下拉自动填充可以完成。
第2个回答  2022-03-13
建议用多重合并计算区域的数据透视表,会比公式的方法更简单,更快捷,更少的资源消耗,Alt+D+p,调出向导,选择多重合并计算区域,在下一步中,分别选择不同工作表的数据区域,选择完成后,就可和普通数据透视表一样进行透视。
另一个好的方法,是用Power Qurey,如果工作表在工作簿(一个文件)中,可直接一次工作簿导入所有工作表的数据。
第3个回答  2022-03-13

假设原三个子表格如下图一所示,公式检索的子表格如图二所示。

表四的B2单元格公式如下,输入公式再右拉,下拉,即可。

表四B2公式:

=IFERROR(VLOOKUP(B$1,(OFFSET(Sheet1!$A$1,MATCH($A2,Sheet1!$A:$A,)-1,1,5,2)),2,0),0)+IFERROR(VLOOKUP(B$1,(OFFSET(Sheet2!$A$1,MATCH($A2,Sheet2!$A:$A,)-1,1,5,2)),2,0),0)+IFERROR(VLOOKUP(B$1,(OFFSET(Sheet3!$A$1,MATCH($A2,Sheet3!$A:$A,)-1,1,5,2)),2,0),0)

图一

图二

本回答被提问者采纳
第4个回答  2022-03-13
O3=INDEX(C:C,SMALL(IF(($A$3:$A$100=N3)*(B$3:B$100=O$1),ROW($A$3:$A$100),65536),ROW(A1)))&""
数组公式,同时按 CTRL SHIFT 回车键
出现结果下拉公式,然后复制到 R3
相似回答