EXCEL中怎样在一列中查找指定数值返回的另一列中的对应行的数值

E列是姓名 F列成绩 G列姓名 H列成绩
式样 42 78
民, 43 42
早退 78 40
单元格很多,我要在G1中编辑公式在F列中查找与H列中相同的数,然后返回E列中对应的名字。成绩有相同的,返回值不能相重。跪求各位高手。先谢谢了。

1、在图中所示的工作表中,如果要在第I列中输入代码,相应的规范将自动显示在第J列中。这是典型的VLOOKUP应用程序示例。此功能要求代码列中的数据必须是唯一的。这意味着重复值不能出现在代码中。您需要查找的内容必须在您需要返回的数据之前(右侧)。

2、单击J2单元格并单击“插入函数”按钮以显示“插入函数设置”框,并在[查找和参考]类别中选择VLOOKUP函数

3、继续弹出功能参数设置框。第一个参数是你需要找到的。此示例设置为I2,第二个参数是需要找到的原始数据区域。在此示例中,它设置为D:F,即D,E和F三列。找到第三个参数并返回前几列的内容。

4、这样就完成了一列中查找指定数值返回的另一列中的对应行的数值,通过计算显示结果为6,效果如下。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-01-29

    首先想到的是求第二行不等于0的最小列标,用=MIN((A2:F2<>0)*COLUMN(A2:F2)),且是数组公式,即同时按Shift+Ctrl+Enter结束公式编辑,会自动生成一对{},但是对于不符合的会返回时,取不到不等于0的最小列标;

    所以可以转换一下求最大值,用10来倒减最小列标,得到最大列标,这样就不会取到不符条件的列标,取出的最大值,再用10来减,即得到最小列标:=10-MAX((A2:F2<>0)*(10-COLUMN(A2:F2))),这也是数组公式,即同时按Shift+Ctrl+Enter结束公式编辑,会自动生成一对{};

    上面也是数组公式,可以用SUMPRODUCT函数来转一下,就成为普通公式,不需要三键齐按;

    再用INDEX函数返回第一行相应列的值即可达到目的:=INDEX(1:1,SUMPRODUCT(10-MAX((A2:F2<>0)*(10-COLUMN(A2:F2)))))。

第2个回答  推荐于2017-11-24
假设在A列查找指定数值,返回B列相应行数值。
在C1或其它单元格输入公式即可:=LOOKUP(待查找数值,A:A,B:B)

注意,必须确定A列中只有一个单元格等于待查找数值并且要将A、B两列按A列升序排列,否则查找结果不正确。追问

E列是姓名 F列成绩 G列姓名 H列成绩
式样 42 78
民, 43 42
早退 78 40
单元格很多,我要在G1中编辑公式在F列中查找与H列中相同的数,然后返回E列中对应的名字。成绩有相同的,返回值不能相重。跪求各位高手。先谢谢了

追答

在G1中输入:=LOOKUP(H1,F:F,E:E),然后向下拖动即可。(注意将E、F两列按F列升序排列)

但是你这个东西有个问题哦,比如,成绩是78的有几个的话,你要返回哪一个呢(公式是返回最后一个)

建议你这样处理:找到唯一一个时返回正确值,否则返回“找到……个”,公式改为=IF(COUNTIF(F:F,H1)=1,LOOKUP(H1,F:F,E:E),"找到"&COUNTIF(F:F,H1)&"个")

本回答被提问者和网友采纳
第3个回答  2011-07-13
用Vlookup,没有图跟行列标,没法写公式,你按F1调下帮助,自己去找下看吧