目录
- 1 精确查找 (精确查找是模糊查找的子集)
- 2 模糊查找 (理论上精确查找可以找到的,模糊查找也可以)
- 3 精确查找,多个符合条件的内容里第1个或最后1个 (就是用模糊查找方法去查精确匹配的数据)
1 精确查询,用 match() 或 vlookup() lookup()
- match( ,0)
- vlookup(, false)
- lookup( )
- 精确查找,就是需要查找的内容,在查找的列里有匹配的内容才行。
- 否则就会返回错误值
2 模糊查询怎么查?
- 理论上精确查找可以找到的,模糊查找也可以
- 只是match(,0) 这种指定的只能用于精确查找,用match(,1) 等就可以
- 或者用 lookup(1,0/(),)
- 比如我要查的值,不是目标列里的值
- 这种很常出现,因为很多要查的目标列的数据并不是连续的,而是离散的
- 查询函数还是那几个,只是要改变下写法
- match( ,1)
- lookup()
- vlookup(,true)
- 方法1 =LOOKUP(G5,A:A,B:B)
- 方法2,=INDEX(B:B,MATCH(G6,A:A,1)) ,方法2需要保证,数值列是升序排列的
3 特殊精确查找,如果有多个符合条件的,想查到其中的某一个呢
- 目标
- 我把数据里改了几个24000,测试下
- 也就是,这种查询需求,也是要精确查询到多个符合要求的目标内容中的一个。
3.1 如何查到符合条件的第1个?
-----用精确查找的方法,查到的一般都是第1个符合要求的
=INDEX(B:B,MATCH(G17,A:A,0))
=VLOOKUP(G18,A:B,2,FALSE)
match,精确查找,
3.2 如何查到符合条件的最后1个?(用模糊查找的方法,查要找的精确查找的值,才能查到第1个或最后1个)
---用模糊查找,查到的一般都是符合条件的最后1个
- 为什么要用模糊查找方法?因为精确查找都只能匹配第1个合适的
- 而模糊查找的方法,也是支持精确查找的,可以说是包含精确查找
- 精确查找是模糊查找的子集
- =INDEX(B:B,MATCH(G19,A:A,1))
- =VLOOKUP(G20,A:B,2,TRUE)
- =LOOKUP(G20,A:A,B:B)
3.3 如何查到符合条件的最后1个?
---用模糊查找,且不需要数据按升序排列等!
- =LOOKUP(1,0/(A:A=G21),B:B)
4 据说还有 xlookup() 可以往前面的列查,不用像vlookup()一样
暂时EXCEL2019版本不支持,没试过