excel,查询不受数字文本格式影响
2020-04-28 本文已影响0人
scorpioz78
常用的查询函数有2种,vlookup,index+match,具体的使用方法我我们复习一下
vlookup(查询的位置,查询的范围且第一列为查询内容,要输出的列在范围内是第几行,0)
index(输出的列,match(查询的位置,匹配的列,0))
最后的0是精确匹配的意思
举例
一般我们作为索引、也就是用来做比对,确认查找的往往是编号,之类的数字,比如我们上面例子中的工号。可以有效避免姓名造成的重名情况。
用数字做索引的有一个问题就是数字有多种形式,最迷惑的就是数字和数字的文本格式。
如果数字用了文本格式,就会检索不到。
上面A2:A5,分别是
20的情况是,之前是“常规”,然后修改了单元格形式为“文本”这个时候虽然默认对齐方式变为文本,这个本身还是个数字,不会随着单元格修改而修改,如果在单元格内双击,则变成30的情况,
为了避免这个问题,微软在左上角做了三角标志,
总之在数字格式问题上会对我们的查找函数有影响
采取的方式,插入辅助列统一变成文本,或者统一变成数字
变成数字比较简单*1即可
变成文本需要用工函数=TEXT(G2,"0”)
增加空间:我们可以选择重新建立辅助列,整理数据来保证正确的查找。
增加时间:也可以在公式上增加复杂度,增加计算时间
在index+match的基础上稍微做这样的改进,就可以同时兼容数字和文本。
'=INDEX($C$1:$C$6,MATCH($A20*1,$A$1:$A$6*1,0))
这里涉及几个知识点做补充说明:
$,绝对引用,加上的意思,不会随拖动改变。
A1:A6*1 这是个数组乘法,强制把这一列的数据转变为数字。