1、首先打开数据表格,如下图所示。
2、假设需要调取A,B,E三个人这四个月的绩效,选中H59:K62单元格区域,如下图所示。
3、输入公式=VLOOKUP($G59,$A$59:$E$63,COLUMN(B59),0),如下图所示。
4、进行完第二步后,使用组合键“ctrl”+“enter”,完成数据的填充,如下图所示。
5、此公式的使用,仅限顺序连续调取数据,如果是查找一月和四月的数据,则不能使用这个公式进行全部空格填充,完成效果图。
1.VLOOKUP函数一般一次只能返回一个结果,本例介绍通过辅助列的方法使VLOOKUP函数查询一个值,返回这个值对应的多个结果。
2.在原始数据中A列有多个“张三丰”,需要提取每个“张三丰”对应的“工号”。
3.一般情况的VLOOKUP只能返回第一个值,如下:
=VLOOKUP(A8,A1:D5,2,0)
4.在【姓名】列前插入一列,如下图输入公式:
=COUNTIF(B$2:B2,B2)
这个公式返回每个“姓名”从上到下是第几次出现,如第二个“张三丰”标记2。
5.将A2公式改成:
=B2&COUNTIF(B$2:B2,B2)
这样就将B列的“姓名”和出现次数连在一起。
6.在B8输入公式:
=A8&ROW(A1)
将A8值和ROW(A1)返回的1连在一起,下拉ROW(A1)会变成ROW(A2)返回2。
7.将B8的公式修改成如下:
=VLOOKUP(A$8&ROW(A1),A$1:E$5,3,0)
也就是在A1:E5范围内查询“张三丰”和出现次数的文本对应第3列的【工号】。
8.将公式下拉,就将所有“张三丰”对应的信息查询出来了。
这个有解。输入
=IFERROR(INDEX($C$1:$C$100,MATCH($A1&$C1,$B$1:$B$100&$C$1:$C$100,)),"")
按F2,再同时按下Ctrl+Shift+Enter组合键,下拉填充完成。结果显示如:
A A 123 123
A B 456
A C 789
A A 111 111
或:=IFERROR(LOOKUP(1,0/(($A1=$B1)*($C:$C=$C1)),$C:$C),"")下拉填充即可
前面的IFERROR函数是如果输出错误就改为输出空,美观些罢了。可以去掉的。
你直接对根据a列进行排序不就行了?