当前位置: > 热闻

几十万行数据,想用VLOOKUP函数查找对应值,卡死怎么办?

时间:2022-04-22 20:27:15 热闻 我要投稿

继续送书!今天送3本《Excel 透视表跟卢子一起学 早做完,不加班》,从留言区随机抽奖。

案例:有A、B两个表格,A表有4万行数据,B表有35万行数据,现在要根据B表的客户编号在A表查询对应值,并将有对应值的项目放在另外一个表格中。

A表

B表

这个问题看起来挺简单的,就是用VLOOKUP查询对应值,然后筛选非错误值,复制到新表格。我尝试了输入公式,跟往常一样向右复制,双击向下填充公式,结果傻眼了。表格基本属于死机的状态,一直显示正在计算。到这里只能强制关闭表格。

用公式根本操作不了,看来需要借助Power Pivot或者Access才行。

Power Pivot早期分享过教程:秒杀大众情人VLOOKUP函数,大数据必杀技真神奇!

今天,卢子主要分享数据库Access,别说几十万,几百万也一样。

新建一个Access,打开后Access后,单击“外部数据”,导入并链接选择Excel,在弹出的“获取外部数据”的对话框,浏览到指定的文件位置,单击“确定”按钮。

弹出“导入数据表向导”保持默认不变,直接点“下一步”。

勾选第一行包含列标题,单击“下一步”。

不做任何处理,直接单击“下一步”。

不做任何处理,直接点“完成”。

导入后在左边会出现一个Sheet的表,导入的步骤虽然繁琐,但并不难,直接根据向导就很轻松导入。至于数据导出就简单很多,直接选择按Excel导出就行。

选择存储位置,单击“确定”。

知道了导入跟导出的方法后,其他的Excel表格也就可以参照这个方法操作。将2个表格导入Access中后就开始进行查询操作。

单击“创建”选项卡的“查询设计”。

点击Sheet添加,Sheet2添加,添加后左边就出现相应的表格及字段名字,最后单击“关闭”。

用鼠标将2个表的客户编号连起来,添加要显示的字段,*就是代表所有,因为是2个表格的所有字段都要显示,单击“运行”。

瞬间就产生了结果,这个结果是2个表格共同有的客户编号。

因为我们现在需要的是B表(Sheet2)的所有记录,这里需要做一个小小的变动。右键查询1,单击“SQL试图”。

这时会看到一段SQL语句,里面有一个关键词:INNER JOIN,这个就是代表两个表共同有的。如果查询不到对应值还要显示出来右边的表格所有记录,就用RIGHT JOIN,相反,如果是左边的就用LEFT JOIN。

这里因为要显示右边的表Sheet2的所有记录,所以改成RIGHT JOIN。修改后单击“运行”。

这样有对应值的就会显示相应的值,没有的就显示空白。

查询后就右键保存起来。

Access看起来好复杂的样子。

其实在Access中,我们常用的功能就是查询,而查询大部分功能都可以通过基础操作生成SQL语句。对于一个新软件的基础操作,多操作几次就熟悉了,这个需要一个适应过程,就像当初学Excel一样。

应粉丝需求,重新推出终生VIP会员,这个是永久,还是3年前的价格。888元那个是一年期的,也就是多几百元就从一年期变成终生,更划算。

陪你学Excel,一生够不够?

一次报名成为VIP会员,所有课程永久免费学,永久答疑,仅需1500元,待你加入。

报名后加卢子微信chenxilu2019,发送报名截图邀请进群。

推荐:秒杀大众情人VLOOKUP函数,大数据必杀技真神奇!

上篇:人人都必须学会的Excel四大技能!(内含对账模板改善版)

你处理过大数据吗,有什么用法?

作者:卢子,清华畅销书作者,《Excel效率手册 早做完,不加班》系列丛书创始人,个人公众号:Excel不加班(ID:Excelbujiaban)