![从数据到Excel自动化报表:Power Query和Power Pivot实战](https://wfqqreader-1252317822.image.myqcloud.com/cover/763/25449763/b_25449763.jpg)
3.4 同类表数据追加查询:轻松组合多表内容
小勤:有没有办法可以很方便地将多个同样格式的表合并到一起?
大海:你可以用Power Query里的“追加查询”啊,即将一个表追加到另一个表中。比如,你有三个格式一样但月份不同的数据要合并到一起,如图3-23所示。
Step 01 以“从表格”方式获取表格“201701”表中的数据到Power Query。
Step 02 为方便后续区别不同的表,在Power Query查询编辑界面的右侧“查询设置”中的“属性/名称”中修改查询名称为“201701”,如图3-24所示。
![](https://epubservercos.yuewen.com/618DAF/13898201703280306/epubprivate/OEBPS/Images/35681-0047-0099.jpg?sign=1738944659-IsvDOYdMwly1z8cvM1GjFAk2VKyx0wrj-0-f6262c5c495996a3c8ee455faf547d65)
图3-23 待合并数据
![](https://epubservercos.yuewen.com/618DAF/13898201703280306/epubprivate/OEBPS/Images/35681-0047-0100.jpg?sign=1738944659-Xcy72fByIrRMM7WsDf4xunLDoP806aTa-0-1e1bd11ef9c0192e59f68bb65fdccbb3)
图3-24 修改查询名称
Step 03 更改“年”“月”列中的数据格式为文本:按住Ctrl键并单击“年”和“月”的列名以选中这两列,切换到“转换”选项卡,单击“数据类型”按钮,在下拉菜单中选择“文本”命令,如图3-25所示。
Step 04 以“仅创建连接”的方式上载数据:切换到“开始”选项卡,单击“关闭并上载”按钮,在下拉菜单中选择“关闭并上载至”命令,如图3-26所示。
![](https://epubservercos.yuewen.com/618DAF/13898201703280306/epubprivate/OEBPS/Images/35681-0048-0101.jpg?sign=1738944659-vhpks5ZuPJaMovkeYozSeuoH8DYwrUL4-0-2f054a900c4aeff4ebc450e056cf2191)
图3-25 转换数据格式
![](https://epubservercos.yuewen.com/618DAF/13898201703280306/epubprivate/OEBPS/Images/35681-0048-0102.jpg?sign=1738944659-IrXnZ06yHuRTMVsj5MgXzqqvURFpD6K1-0-da25f2a6cbf6cd51d4e863adf5695485)
图3-26 关闭并上载数据
在弹出的对话框中勾选“仅创建连接”单选框,单击“加载”按钮,如图3-27所示。
对“201702”和“201703”表分别重复Step 01 ~04操作,将数据添加到Power Query中,然后继续后续步骤。
Step 05 切换到“开始”选项卡,单击“追加查询”按钮,在下拉菜单中选择“将查询追加为新查询”命令,如图3-28所示。
![](https://epubservercos.yuewen.com/618DAF/13898201703280306/epubprivate/OEBPS/Images/35681-0048-0103.jpg?sign=1738944659-qoIC2zXL4J7X5H554eaPPLt42FmBtmmw-0-ffc0238d77461dde7ec3f618d377ff99)
图3-27 选择数据的上载方式
![](https://epubservercos.yuewen.com/618DAF/13898201703280306/epubprivate/OEBPS/Images/35681-0048-0104.jpg?sign=1738944659-BqkvyRGy5Te0uVB56EXcMwpaJaGjkWJk-0-42d51395f2654c48d01f5c365e3cefb3)
图3-28 将查询追加为新查询
Step 06 在弹出的对话框中勾选“三个或更多表”单选框,并依次选中“可用表”中的表并单击“添加”按钮,将所有表添加到“要追加的表”中,最后单击“确定”按钮,如图3-29所示。
![](https://epubservercos.yuewen.com/618DAF/13898201703280306/epubprivate/OEBPS/Images/35681-0049-0105.jpg?sign=1738944659-Dhk1hOX2UXlxMJ0eh3VjL09XGeQMItkj-0-8aaace6155e0bbf44d262b0c0a26ef00)
图3-29 追加查询设置
此时会发现,在Power Query查询编辑窗口左侧的“查询”列表中多了一个名称为“Append1”的查询并处于选中状态,如图3-30所示。
Step 07 修改“合并查询”的名称:在“查询设置”的“属性/名称”中修改“合并查询”的名称,如图3-31所示。
![](https://epubservercos.yuewen.com/618DAF/13898201703280306/epubprivate/OEBPS/Images/35681-0049-0106.jpg?sign=1738944659-EOCyHtJcF6Kfzcw0PZtUEX5gpYiggUyL-0-fda7258065c24ab864d094eeccda58d2)
图3-30 出现的新查询
![](https://epubservercos.yuewen.com/618DAF/13898201703280306/epubprivate/OEBPS/Images/35681-0049-0107.jpg?sign=1738944659-IhW79yy58zC8kCHBXGGDOB0BZZfSj54E-0-9f4d208744c8b24ed595e8432c2e9102)
图3-31 修改查询名称
Step 08 上载数据:保持“合并数据”查询为选中状态,切换到“开始”选项卡,单击“关闭并上载”按钮,会发现其下拉菜单中的“关闭并上载至…”命令处于灰色的不可用状态,如图3-32所示。
也就是说,由于我们在将“201701”等数据表添加到Power Query中时以“仅创建连接”的方式获取数据,其合并查询也会默认为“仅创建连接”方式,并且无法在Power Query查询编辑器中修改。因此,只能先单击“关闭并上载”命令,返回Excel界面后再想办法修改。
Step 09 更改数据上载形式为“表”:在Excel界面中,切换到“数据”选项卡,单击“显示查询”按钮,在窗口右侧将显示“查询”列表。在查询列表中右击“合并数据”(在Step 07 中修改的名称)查询,在弹出的菜单中选择“加载到…”命令,在弹出的对话框中选择“表”选项,然后单击“加载”按钮,如图3-33所示。这样就完成了所需要数据表的合并,并将合并结果返给Excel。
![](https://epubservercos.yuewen.com/618DAF/13898201703280306/epubprivate/OEBPS/Images/35681-0050-0108.jpg?sign=1738944659-gFO8Zm8sPlLc0ycZFqNbA3F7NX4krJqj-0-aef3443591db317c350d8ad55651796e)
图3-32 关闭并上载数据
![](https://epubservercos.yuewen.com/618DAF/13898201703280306/epubprivate/OEBPS/Images/35681-0050-0109.jpg?sign=1738944659-4cFu3G4CmZ63IZMpUadc55d8UTjJgtuj-0-3069d9d19f395f4dd0df64b87a3aac03)
图3-33 更改结果表的数据上载方式
小勤:这样的话,如果数据表中的数据有变化,是不是在合并数据表里直接刷新就可以了?
大海:对。但要注意一个问题,用这个方法是选择了确定的三个表进行合并的,如果这三个表中的数据出现变化,那么在合并数据表中可以直接刷新。但如果新增了一个数据表,比如“201704”,那么在合并数据表中是不包含新增表中的数据的。
小勤:那也就是说,这种方法适用于固定的多个表数据的合并和自动刷新?如果要新增加的表也被包含进去怎么办?
大海:如果要新增的表也被包含进去,那就要考虑从工作簿或文件夹获取数据然后进行整合,我们在后续的综合实战中再讨论。