Excel函数应用集

  • 格式:xls
  • 大小:4.11 MB
  • 文档页数:19

vlookup应用实例主页

VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)Lookup_value为需要在Table_array第一列中查找的数值。

可以为数值、引用或文本字符串。需要注意的是类型必须与table_array第一列查找文本时,文本不区分大小写;可以使用通配符“*”、“?”。

Table_array为需要在其中查找数据的数据表。可以使用对区域或区域名称的引用、常数数组、计算后的内存数组。对区域引用时,可以引用整列,excel会自动判断使用区域。该参数的第一列必须包含查找的内容,其它列包含需返回的内容;返回内容的列

Col_index_num为table_array中待返回的匹配值的列序号。如为1时,返回table_array第一列中的数值;为2,返回table_array第二列中如果col_index_num小于1,函数 VLOOKUP 返回错误值值 #VALUE!;如果col_index_num大于table_array的列数,函数 VLOOKUP 返回错误值 #REF

Range_lookup为一逻辑值,指明函数VLOOKUP返回时是精确匹配还是近似匹配。如果为TRUE或省略,则返回近似匹配值,也就是说,如果找不到精确匹配值,则近似匹配查询一般用于数值的查询,table_array的第一列必须如果range_value为FALSE(或0),函数VLOOKUP将返回精确匹配值。此时,table_array不必进行排序。如果找不到,则返回错误值#

例1精确匹配查询之基本运用例8在同一单元格按不同例2数值近似匹配查询之基本运用例9返回多个符合条件的例3文本近似匹配查询之基本运用例10有两个并列条件(不例4区别查询结果的空白与0值例11使用数组常量的查询例5依次序返回同一查询结果的多列内容例12从右向左查询例6返回同一查询结果的多列(不按原次序)的内容##处理查找错误例7按部分内容模糊查询

以上举例是vlookup的基本运用,再结合其它函数,可以发挥其更多作用。处理查找错误vlookup使用中一般会产生以下错误:#VALUE!和 #REF!是由于col_index_num设置不当造成的,虽然可以使用ISERROR剔除,但建议不有时col_index_num参数使用column()函数生成,当设置不当造成的错误用ISE#N/A是常见的错误信息,需要针对不同情况处理:精确匹配查找时出现,是由于未找到完全匹配的值。近似匹配查找时出现,是由于查找值小于数据区的最小值。如果vlookup的参数产生错误,vlooukp也返回相同错误,那不在本讨论范围内。

精确匹配查找时出现#N/A错误首先检查引用范围是否正确,查询值是否在数据区的第一列。

当确定引用正确、不应出现#N/A(即应该查找到值)时,检查是否存在空格或其它字符、格式表一张三丰100对于空格或其他不可见字符,可以使用len函数测试文本长度来确李四军 200B50单元格长度4张三丰 #N/A该错误由于查询字符“张三丰 ”后含空格,可能看不出,但在精

100对于lookup_value中的空格,将其中的空格替换掉,或使用TRIM

李四军#N/A该错误是由于查询表表四中“李四军”后含空格,在精确匹配查

200对于Table_array中的空格,也可以使用trim。

这个公式中的Table_array已不是直接引用单元格区域,而是引用因此,这是一个数组公式,需要按Ctrl+Shift+Enter输入如果数据区比较大,数组公式会很慢;不如直接使用替换将数据

李四军 #N/A该错误由于查询字符“李四军”后含不可见字符(非空格),使

由网页复制、其他程序转出的表格,经常会出现这类字符,CODE对于这类不可见字符,可以先复制该字符,然后替换该字符为空

表二100A查找内容格式不符,也会造成#N/A错误200B可以使用鼠标选定几个单元格,看状态栏的合计。有,则为数值

100#N/A这两个错误都是由于格式不一致造成,一个是按数值查文本,一

200#N/A对于此类错误,可以修改查找值、数据区的格式,使之统一;也

A这个公式将数值100用&连接空字符串"",强制转为文本

B这个公式将文本200用*1运算,强制转为数值

要注意的是采用修改格式的方法,仅仅将单元格格式更改还不行例如对于包含数值的常规单元格将格式改为文本后单元格很多时,采用逐个激活的方法肯定会累死。可以采用分列

当某列数据需要全部转换时,采用分列是个好办法。它可以将文分列位于菜单栏——数据——分列由文本转数值也可以复制一空白单元格,选定需转换的数据区,选择性

当确定应该出现#N/A(即查找值不存在)时,如果不要显示错误,可以使用条件格式或直接在表三A100注意使用条件格式处理后单元格内的值仍是#N/A,其他单元格引C200当C55选B时,显然应该返回错误(数据区没有B)。B#N/A这个单元格使用条件格式处理,条件格式公式=isna(D55),并设使用ISNA测试vlookup函数是否返回#N/A,如vlookup函数返回#N精确查找时,也可以直接判断查找值是否存在来去除

近似匹配查找时出现#N/A错误近似匹配查找时,除了前述的格式等原因,查找值小于数据区的最小值将返回#N/A。对于此类错误,只要数据区设计合理就可避免(建立可能的最小值),当然也可以使用ISNA去除

精确匹配查询之基本运用

精确查找是vlookup最基本也是最常用的功能,对于数据量大的查找,其速度比菜单中的查找还快。设置vlookup第四个精确查找适用于文本,也适用于数值;但对数值查找时须注意格式一致,否则会出错

表一姓名工号性别籍贯出生年月张三丰KT001男北京1970年8月

数据含空格等

数据格式不一致

处理错误返回李四光KT002女天津1980年9月王麻子KT003男河北1975年3月赵六儿KT004女河南1985年12月

姓名籍贯王麻子河北根据姓名在$B$9:$F$12中查找籍贯,$B$9:$F$12区域最好使用绝对引用(可在查找的姓名必须位于$B$6:$F$9的第一列;籍贯在$B$6:$F$9位于第四列,因此姓名性别李四光女根据姓名在【表一】中查找籍贯【表一】是定义的单元格区域$B$9:$F$12的名称,在名称框(编辑栏左边)可以工号籍贯KT002天津根据工号在$C$8:$E$12中查找籍贯注意范围已改为$C$8:$E$12,确保工号在第一列;由于范围的改变,籍贯位于该工号出生年月KT00125781根据工号在$C$8:$F$12中查找出生年月,但此时返回的是时间序列值(即格式没1970年8月需要重新设定单元格格式1970年8月或在公式中使用text设定格式

数值近似匹配查询之基本运用近似匹配查找通常情况下用于累进数值的查找。此时第四个参数省略,或为true,或为非0数值。(EXCEL中0等同FALS这是一张个所税税率表,对于不确定的收入,可以利用近似匹配查找税率及速扣数表二级数 应税所得超过且不超过税率(%)速算扣除数 15005025002000102532000500015125450002000020375520000400002513756400006000030337576000080000356375880000100000401037591000004515375

应税所得税率速算扣除数 税款5360203756975360在表中未列出,因此EXCEL查找小于5360的最大值即5000,并返回对应的税率等。注意公式中第四个参数省略,或为true,或为非0数值。并且查找的第一列必须升序排列,否则不会返回期望的结果(需要注意的是此时不一定返回错误)。试着输入5000,你会发现税率为20%,应是15%(由条件指定),虽然对最后计算结果没有影响。以下公式可以解决这个

应税所得税率速算扣除数 税款500015125625

文本近似匹配查询之基本运用表三对于文本,一般不使用近似匹配查找(非模糊查找)。吖A并非文本不能用于近似查找,主要是没有太多用途。除了下面这八B嚓C这个例子利用文本近似匹配查找汉字的第一个拼音字母咑D由于EXCEL中汉字字符是按拼音排序的,因此汉字字符比较时的大鵽E左边的表是根据汉字拼音首字母排列,并取各字母的临界点汉字

返回

返回发F猤G汉字字符拼音首字母铪H家J夻J咔K通过将“家”与表中字符比较后,找到比“家”小的

垃L这个例子一般用于姓名的缩写,而上面的公式只找第一个字符,嘸M旀N汉字字符拼音首字母噢O普利卡PLK妑P七Q这个公式取得前三个汉字字符的拼音字母。使用MID依囕R仨S使用该例关键是【表三】的建立;同理,如果要查找汉字的完整他T但这个方法并不一直正确,由于多音字及文字大小排序与其拼音屲W夕X丫Y帀Z

区别查询结果的空白与0值表四姓名内容张三丰0vlookup对于查找到的0值会返回0;张三丰0李四光0对于空白单元格(非空字符串)也会李四光王麻子对空字符串仍返回空字符串。王麻子赵六儿赵六儿张三丰0如要对0值和空白单元格区别,可以直李四光如不需要0值,可直接判断=0,或在

依次序返回同一查询结果的多列内容按姓名在【表一】中查询全部内容姓名工号性别籍贯出生年月李四光KT002女天津1980年9月王麻子KT003男河北1975年3月

当查询某个结果的多列内容,并要依次取出,可使用column()函数作为index_num参数column()函数返回公式所在列的列号,当公式复制时,会随单元格的移动相应改lookup_value参数使用混合引用,如$B96。即对列标绝对引用(列标前加$)、上面公式只要输入C96中的公式,然后向右、向下复制就可以。

返回同一查询结果的多列(不按原次序)的内容按姓名及不同项目(不依次序)在【表一】中查询姓名性别籍贯出生年月工号先由match函数确定项目内容在B8:F8赵六儿女河南1985年12月KT004注意公式中Match函数的王麻子男河北1975年3月KT003

按部分内容模糊查询

返回返回返回返回