美文网首页
Power Query如何快速合并工作表?

Power Query如何快速合并工作表?

作者: TechTalker | 来源:发表于2019-07-29 15:36 被阅读0次

    先通过一个简单地例子来讲如何快速实现合并工作表,并进行分析。下面有三个工作表,每个工作表有多个sheet,且结构都一致。一般情况下,数量少的时候可以手动复制就可以搞定,但是当有很多数据的时候,也只能用VBA来解决了,但VBA还是有点难学的。下面就来教你如何试试
    power query来解决这个问题。

    订单表.png

    为了避免和原来的数据混在一起,新建了一个工作表,切换到“数据”选项卡,单机“新建查询”按钮,选择“文件夹”。在弹出的浏览文件夹对话框中,选择要合并的数据所在的文件夹。

    一、选择导入文件夹

    1.png
    2.png
    点击确定键之后跳出了一个预览文件清单的框,点击编辑按钮,进入power query编辑界面。在编辑器中可以看到,3个Excel工作表的信息都被读了进去,包括工作表的名称、修改时间等。其中工作表的数据在“content”列中。 3.png

    二、自定义列

    用power query里的简单函数“Excel.Workbook”将这些工作簿的数据解析出来:在power query查询编辑器里,切换到“添加列”选项卡,单击“自定义列”按钮,在弹出的对话框里输入公式:“=Excel.Workbook([Content],true)”

    注意大小写,然后单击确定。 4.png

    三、选择需要合并的“订单表”

    单击上步的自定义列的数据展开按钮,取消按钮“使用原始列名作为前缀”复选框,单击确定。


    5.png

    点击确定键之后会多出几列数据,单击Item列右侧的数据筛选按钮,在弹出的对话框勾选“订单”复选框,单击确定键。


    6.png
    这时候数据就展开了订单表的数据,单击“Data”列右侧的数据展开按钮,在弹出的对话框中取消勾选“使用原始列名作为前缀”,单击确定键。
    image.png

    四、删除不需要的列

    数据展开后,订单表中的所有数据会被选中的状态(显示蓝色),右键选中“删除其他列”。这样就合并好了。


    7.png

    五、关闭并上载导入到Excel

    8.png 9.png
    报表自动化的关键是,以后要导入新的数据时候,不需要再重新做一遍,而是一键刷新就自动得到最新的结果。比如,这里将数据返回到了Excel里了,以后数据源有了新的内容,只需要在Excel里右键选择“刷新”就可以得到最新的数据。

    六、那如果要再次合并订单明细表呢,这里就显示了power query 强大之处,因为之前合并的步骤都已经记录下来了。

    10.png

    所以只要复制就可以复制上面的步骤,而不需要重新操作一次。下面具体来看看:
    在Excel中,切换到数据选项卡,单击显示查询按钮,在右侧的工作簿中双击前面步骤创建的查询,进入power query界面。


    11.png

    在左侧的查询界面中右键复制订单表,并粘贴到下面,在右侧改名为“订单明细表”。


    12.png
    13.png

    这时候我们只要操作右侧的查询设置中的应用步骤,可以点击每一个步骤看看具体的数据,由于订单明显表和订单表的整个过程是从筛选步骤开始有差异,所以只要修改“筛选的行”以后的步骤就可以。在应用的步骤中,右键单击“筛选的行”步骤。在弹出的菜单中选择“删除到末尾”。

    14.png
    接下来就和上面的操作类似了,在item中选择“订单明显”,确定后再删除其他的列就得到了订单明显表,最后还是将数据上载到Excel中。
    15.png
    16.png
    最后合并多的工作表的任务就完成了,你学会了吗?
    17.png
    如果是一个工作簿里有多个相同结构的sheet合并请点击

    如果你想要数据源来进行操作练习的话,私信发1即可。

    相关文章

      网友评论

          本文标题:Power Query如何快速合并工作表?

          本文链接:https://www.haomeiwen.com/subject/wejbrctx.html