百万级表格实测,excel是时侯使用XLOOKUP了,比VLOOKUP简单、不出错、快

使用场景:用“证件号码”查找“Sheet4表”(272181行)的“姓名”列,填充到“Sheet1”表的空白列中。为了演示传说中的二进制查找,我们预先对“Sheet4”进行了按“证件号码”排序。

1、VLOOKUP:

我们第一次使用公式为:=VLOOKUP(B2,Sheet4!$A$2:$B$272181,1,FALSE),这个公式并没有找到数据,出现的是“#N/A”。这个很奇怪,我在有的表,用这样的范围查找,是可以出现正确结果的。

我们第二次使用公式为:=VLOOKUP(B2,Sheet4!$B$2:$B$272181,1,FALSE),这样是能出来结果了。然后我们把这个公式粘贴到这一列的全部单元格中,共883740行,特别慢,我没有等待它结束,强制关闭掉了。

2、XLOOKUP:

我们第一次使用公式为:=XLOOKUP(B2,Sheet4!$B$2:$B$272181,Sheet4!$A$2:$A$272181),出现结果是正确的。然后我们把这个公式粘贴到这一列的全部单元格中,共883740行,用时30秒,结果完全正确。

我们第二次尝试使用二进制搜索,使用公式为:=XLOOKUP(B2,Sheet4!$B$2:$B$272181,Sheet4!$A$2:$A$272181,,0,2)

出现结果是正确的。然后我们把这个公式粘贴到这一列的全部单元格中,共883740行,用时15秒,结果完全正确。

3、注意:使用XLOOKUP,两个表要去掉筛选条件。如果有筛选,XLOOKUP用的是可见数据,而不是整表数据。XLOOKUP的二进制搜索确实要快一倍,但是大数据表的排序是很慢的。而且加了二进制搜索,如果不排序,是出不来结果的。所以二进制搜索并不推荐。最后注意一点,我所做的测试使用的是excel,并不是“套娃收费”的那款软件。那款软件的XLOOKUP我也测试了,结果就不公布了,容易挨揍。

4、结论:如果你有excel使用,请用XLOOKUP,放弃VLOOKUP。XLOOKUP真的很简单,而且不会出错,速度还快。VLOOKUP比较复杂,慢,要命的是会出现错误。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值