美文网首页
[Excel] Vlookup基本用法

[Excel] Vlookup基本用法

作者: Lacia | 来源:发表于2020-11-30 15:24 被阅读0次

    ---学习记录---

    VLookup基本用法

    1 基础语法

    =VLOOPUP(lookup_value,table_array,col_index,range_lookup)

    lookup_value:查找关键字

    table_array:查找范围

    col_index_num:返回查找范围内的第几列数据

    range_lookup:匹配方式,模糊匹配:0,精确匹配:1

    • 查找关键字在查找范围内需要是唯一的!!!

    2 反向查找

    <e.g> 查找I2中姓名为张三的同学的所在班级

    =VLOOKUP(I2,IF({1,0},$B2:$B5,$A$2:$A$5),2,0)

    lookup1.png

    先看如何将查找范围中的AB两列交换位置进行查询

    IF语句

    IF(logical_test, [value_if_true], [value_if_false])

    logical_test:逻辑判断语句

    value_if_true:如果判断为真,返回value_if_true

    value_if_false:如果判断为假,返回value_if_false

    回到例子中,IF({1,0},$B2:$B5,$A$2:$A$5)的作用是将$A$2$A$5$B$2$B$5的位置交换并形成一个数组

    1. 如果1,返回$B2:$B5

    2. 如果0,返回$A2:$A5

    按从左到右的顺序先执行1,再执行0,返回的数组即为$B$2$B$5:$A$2$A$5,即将两列交换位置

    • 使用了数组的公式不能直接按回车执行,需要按Ctrl+Shift+回车,否则会报错!!!

    3 多条件查询

    =VLOOKUP(lookup_value1&lookup_value2,IF({1,0},table_array1&table_array2),col_index,range_lookup)

    <e.g>查找姓名=张三、班级=2班的同学的语文成绩

    • 一次错误尝试

    =VLOOKUP(I2&J2,IF({1,0},$A$2:$A$5&$B$2:$B$5,$C$2:$C$5),2,0)

    IF({1,0},$A$2:$A$5&$B$2:$B$5,$C$2:$C$5) IF语句将$A$2:$B$2作为一个整体当作查询的第一列,$C$2:$C$5作为查询的第二列。查询条件为I2&J2,但由于I2、J2分别为姓名和班级,而$A$2:$B$2作为第一列的抬头为班级和姓名,导致查询不到符合条件的结果,因此K2的值为NA

    lookup2.png
    • 正确结果

    =VLOOKUP(J2&I2,IF({1,0},$A$2:$A$5&$B$2:$B$5,$C$2:$C$5),2,0)

    lookup3.png

    4 查询返回多列

    =VLOOKUP(lookup_value,table_array,COLUMN(X),range_lookup)

    <e.g>查询姓名为李四的同学的语文成绩

    lookup4.png
    • 一次错误尝试=VLOOKUP($I3,$B$2:$C$5,COLUMN(C1),0),报#REF!错误,原因在于COLUMN(B1)中的B1是对于查询范围来说的,对于查询范围$B$2:$C$5来说,COLUMN(C1)指的是D列,即为$B$2:$C$5范围中的第三列,而查找范围中并没有第三列,所以报#REF!错误。(就算不报错,返回的值也不是想得到的值哦)
    lookup5.png
    • =VLOOKUP($I3,$B$2:$C$5,COLUMN(B1),0),得到了正确的结果

    Reference: https://www.zhihu.com/question/34419318

    相关文章

      网友评论

          本文标题:[Excel] Vlookup基本用法

          本文链接:https://www.haomeiwen.com/subject/lygrwktx.html