加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

EXCEL中查找满足条件的行并返回该行某个值

(2012-07-30 16:56:58)
标签:

excel

分类: EXCEL
这几天一直在处理一些数据,其中就有需要“查找满足条件的行并返回该行某个值”。但是对EXCEL的函数不熟悉,刚开始想到的是if函数(参考EXCEL帮助文档:如果指定条件的计算结果为 TRUE,IF 函数将返回某个值;如果该条件的计算结果为 FALSE,则返回另一个值。例如,如果 A1 大于 10,公式 =IF(A1>10,"大于 10","不大于 10") 将返回“大于 10”,如果 A1 小于等于 10,则返回“不大于 10”。),但if函数的返回值好像不能返回某个单元格的引用(如果有大神可以用if写出来希望不吝赐教),然后choose函数一看应该就不满足我的要求,于是选择了lookup函数。
参考EXCEL帮助文档:

语法

LOOKUP(lookup_value,  lookup_vector,  [result_vector])

LOOKUP 函数向量形式语法具有以下参数:

  • lookup_value 必需。LOOKUP 在第一个向量中搜索的值。Lookup_value 可以是数字、文本、逻辑值、名称或对值的引用。
  • lookup_vector 必需。只包含一行或一列的区域。lookup_vector 中的值可以是文本、数字或逻辑值。

    要点 lookup_vector 中的值必须以升序排列:...,-2, -1, 0, 1, 2, ..., A-Z, FALSE, TRUE。否则,LOOKUP 可能无法返回正确的值。大写文本和小写文本是等同的。

  • result_vector 可选。只包含一行或一列的区域。result_vector 参数必须与 lookup_vector 大小相同。

说明

  • 如果 LOOKUP 函数找不到 lookup_value,则它与 lookup_vector 中小于或等于 lookup_value 的最大值匹配。
  • 如果 lookup_value 小于 lookup_vector 中的最小值,则 LOOKUP 会返回 #N/A 错误值。 
其中注意到第一个说明,最好待查找值一定在要查找的向量(例如:某一列)中,否则待查找值会与最接近它的最小值进行匹配,文档中给出了例子:
   A  B C
1 频率 颜色
2 4.14 红色
3 4.19 橙色
4 5.17 黄色
5 5.77 绿色
6 6.39 蓝色
公式 说明 结果
=LOOKUP(4.19, A2:A6, B2:B6) 在 A 列中查找 4.19,然后返回 B 列中同一行内的值。 橙色
=LOOKUP(5.00, A2:A6, B2:B6) 在 A 列中查找 5.00,与接近它的最小值 (4.19) 匹配,然后返回 B 列中同一行内的值。 橙色
=LOOKUP(7.66, A2:A6, B2:B6) 在 A 列中查找 7.66,与接近它的最小值 (6.39) 匹配,然后返回 B 列中同一行内的值。 蓝色
=LOOKUP(0, A2:A6, B2:B6) 在 A 列中查找 0,并返回错误,因为 0 小于 lookup_vector A2:A7 中的最小值。
#N/A

例如在“第一次通电时间”里就是要查找“炉次号”中的在“HEAT_ID”中的炉次并返回所在行的“相差时间”值。
http://s2/middle/6fece3e7t7a340fe31651&690


0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有