EXCEL中LOOKUP函数如何使用?

EXCEL中,1行5列,A1为姓名,A5为职务,我想在B1里输入姓名后,就会自动在B5里自动显示该人的职务。30+人数,使用IF函数的话有限制(7个嵌套),用VLOOKUP和LOOKUP的话,老是弄不好,主要是不会用。。。。请教!

  语法:VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)
  Lookup_value 为需要在表格数组第一列中查找的数值。Lookup_value 可以为数值或引用。若 lookup_value 小于 table_array 第一列中的最小值,VLOOKUP 将返回错误值 #N/A。
  Table_array 为两列或多列数据。请使用对区域的引用或区域名称。table_array 第一列中的值是由 lookup_value 搜索的值。这些值可以是文本、数字或逻辑值。不区分大小写。
  Col_index_num 为 table_array 中待返回的匹配值的列序号。Col_index_num 为 1 时,返回 table_array 第一列中的数值;col_index_num 为 2,返回 table_array 第二列中的数值,以此类推。如果 col_index_num :小于 1,VLOOKUP 返回错误值 #VALUE!。大于 table_array 的列数,VLOOKUP 返回错误值 #REF!。
  Range_lookup 为逻辑值,指定希望 VLOOKUP 查找精确的匹配值还是近似匹配值:如果为 TRUE 或省略,则返回精确匹配值或近似匹配值。也就是说,如果找不到精确匹配值,则返回小于 lookup_value 的最大数值。table_array 第一列中的值必须以升序排序;否则 VLOOKUP 可能无法返回正确的值。可以选择“数据”菜单上的“排序”命令,再选择“递增”,将这些值按升序排序。有关详细信息,请参阅默认排序次序。如果为 FALSE,VLOOKUP 将只寻找精确匹配值。在此情况下,table_array 第一列的值不需要排序。如果 table_array 第一列中有两个或多个值与 lookup_value 匹配,则使用第一个找到的值。如果找不到精确匹配值,则返回错误值 #N/A。

注意引用的时候查找区域是绝对地址。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-08-01
用VLOOKUP,你这里还需要有一个总表明细,就是所有人的姓名以及职务明细总表。你在B5单元格输入“=”符号,选择VLOOKUP函数,第一个参数选择第一行,第二个参数选择总表里面的一个区域,区域为N列,第一列为姓名,最后一列为职务(必须是列,不是行,VLOOKUP不支持从行里免匹配),选定后按F4键,第三个参数为N,第四个参数为0,回车后B5单元格就自动找到总表里面对应的职务了,后面的C5,D5,E5等,直接复制前面的B5,就会自动匹配相应的C1,D1,E1里姓名对应的职务了。
第2个回答  2013-08-01

假设你表格的数据如图A列所示

B2单元格写入公式

=IF(B$1="","",OFFSET(INDEX($A:$A,MATCH(B$1,$A:$A,)),ROW(A1),,))

右拉复制公式再下拉复制公式

 

第3个回答  2013-08-01

B2=IF($B$1="","",OFFSET(INDIRECT("A"&MATCH($B$1,A:A,)),ROW(A1),))

下拉

A列再多也可以

或发样表

[email protected]

本回答被提问者采纳
相似回答