原创 无峰 [ ABAP 技巧与实战 ](javascript:void\(0\);)
**点击蓝字** 关注我们
一
前言
• 解决一些EXCEL公式性能很差的情况
• 解决一些EXCEL公式无法实现的功能
• ......
接下来就跟着本文的示例,看看怎么使用EXCEL中的这个工具吧.
二
示例需求描述
一个常见的需求. EXCEL中把下图左边的SHEET使用字段2与右面的SHEET中的字段3 关联.获取字段1,字段2与字段4 放到同一个表中
三
使用VLOOKUP
熟悉EXCEL的同学肯定觉得这个很简单
使用vlookup即可解决
=VLOOKUP(B2,Sheet2!A:B,2,FALSE )
**性能问题**
**SPRING**
如果要关联的数据量是10万条左右 .
你可能会觉得PC机性能不够用了. 要执行很久才能完成.
进一步,如果数据量达到50万,100万呢,PC可能已经早于你奔溃了.
四
使用POWER QUERY
下面看一下怎么使用POWER QUERY 完成上述示例需求.
并由此进入POWER QUEYR的美好世界.
_**01** _
**获取数据**
点击数据->获取数据->自文件->从工作簿
选择要读取的文件. 可以是当前EXCEL文件(需事先保存文件)
_**02** _
**创建查询**
勾选 **选择多项** 后,选中要关联的两个表单
点击加载
加载后, EXCEL右侧会出现一个查询&连接. 可以看到加载的行数
_**03** _
**优化查询字段名**
依次双击查询&连接中的SHEET1, SHEET2 ,点击将第一行作为标题
然后点击保存并关闭上载.
可以看到查询&连接的内容改变,比刚才少了一行
_**04** _
**创建合并查询**
再次点击第一个查询,展开合并查询,点击将查询合并为新查询
_**05** _
**选择合并内容及方式**
选择两个要合并的表, 设置关联字段, 选择关联方式(有多种选择, 一般选择第一行,类似于LEFT JOIN . 其它行类似于 RIGHT JOIN
INNER JOIN .)
**所有联结种类**
**SPRING**
下图中给出了所有连接的种类与JOIN 的关系
_**06** _
**生成合并查询**
点击确定后,会出现一个合并查询.
点击SHEET2 展开,选择要展开的字段
_**07** _
**合并查询重命名**
创建了一个新的查询,给查询重命名. 这样就获取了我们需要的结果.
_**08** _
**结果写入EXCEL**
点击关闭并上载
此时新的查询会在EXCEL中出现, 并添加一个SHEET
_**09** _
**打完收功**
这样就完成了两个表的关联.
在关联过程中,使用了EXCEL的POWER QUERY 编辑器. 这个编辑器类似于一个图形化的SQL编辑器. 可以完成大部分SQL编辑器的常用功能.
比如表关联(JOIN), 表连接(UNION) 等. 更多功能等待你的亲自尝试哦.
五
总结
比起VLOOKUP . 上述操作步骤显得比较复杂. 数据量不大的情况,还是建议大家使用VLOOKUP.因为操作简单.
如果数据量较大,或者想使用更复杂的操作时,POWER QUERY的优势就显示出来了,极大的提升了性能. 此时EXCEL就类似于一个本地数据库, POWER
QUERY 就是一个查询编辑器,
可以实现很多复杂的数据库查询功能,甚至有类似于SQL的文本编辑器,只是语法和标准的SQL语法差异太大,有一个很大的学习成本.
** THE **
** END **
**约定**
如果你对这篇文章感兴趣,请帮忙点赞,在看,分享.
( **如果你真的喜欢这篇文章,请记得回来打个赏,作为支持我继续下去的动力,这是一个正反馈过程.
越多的人打赏,作者越有动力分享,读者就能享受更多的福利.毕竟打赏的金额富不了我,穷不了你,却能支持这个公众号长久发文.** )
**公众号 : syjf1976_abap**
**ABAP开发技巧**
**微信号 : 392077**
**公众号主群加入受限, 请扫码加入副群后,向管理员申请加入主群**