将Excel文件导入Power Query的多种方法介绍,最后一种很好用

JaryYuan
JaryYuan
JaryYuan
40
文章
0
评论
2020-08-2113:08:00 评论 3,167 1155字
摘要

Excel 文件可以说是我们平时办公中接触最多的文件类型。这篇文章主要讲讲将 Excel 文件导入Power Query 的几种情况:从外部导入、从Excel内部导入、Excel.CurrentWorkbook()导入

Excel 文件可以说是我们平时办公中接触最多的文件类型。这篇文章主要讲讲将 Excel 文件导入Power Query 的几种情况。

以下是本文使用的Excel示例文件:Excel Data.xlsx

将Excel文件导入Power Query的多种方法介绍,最后一种很好用

1、从外部导入

从外部导入是指新建空白工作簿,将 Excel Data 作为外部数据源进行导入。这种方法和我们上文导入CSV文件一样。获取数据时选择「从工作簿」即可。

将Excel文件导入Power Query的多种方法介绍,最后一种很好用

这种方法很简单,不再详细介绍了。值得注意的是在导航器中 Excel 的智能表格和工作表会以不同的图标加以区分。

将Excel文件导入Power Query的多种方法介绍,最后一种很好用

2、从Excel内部导入

从 Excel 内部导入 Power Query 是指直接在 Excel Data.xlsx 工作簿中将数据加载进入 Power Query 编辑器。

这种情况下将在原始的源数据表中创建查询。操作步骤如下:

  • 选择数据区域任意单元格
  • 「获取和转换数据」找到 「自表格/区域」

将Excel文件导入Power Query的多种方法介绍,最后一种很好用

如果数据区域是以智能表格形式存在的,则会直接加载进入PQ编辑器。如果是普通区域,Excel 将弹出「创建表」对话框,并指定区域是否包含标题。

数据加载进PQ编辑器以后,查询名称将自动套用智能表格名称。而在应用步骤中并没有提升标题的步骤,因为在智能表中已经指定了列名。

将Excel文件导入Power Query的多种方法介绍,最后一种很好用

3、Excel.CurrentWorkbook()导入数据

当我们的 Excel 文件中包含命名区域、动态命名区域、智能表时,可以使用 M 函数 Excel.CurrentWorkbook() 将当前工作簿中的不同数据区域一次性导入。

将Excel文件导入Power Query的多种方法介绍,最后一种很好用

从名称管理器中,我们可以看到 Excel Data.xlsx 包含一个命名区域 NameRange,一个动态命名区域 DynamicRange 和一致智能表格 Table 1。

动态命名区域的公式为:

=Dynamic!$A$5:INDEX(Dynamic!$F:$F,MATCH(99^99,Dynamic!$A:$A))

下面我们使用 Excel.CurrentWorkbook() 来获取以上内容,以获取动态命名区域 DynamicRange 为例。操作如下:

  • 点击「获取数据 」>「自其他源 」>「空白查询 」
  • 在公式栏中输入 =Excel.CurrentWorkbook()
  • 点击回车键,确认

完成以上操作以后,可以看到PQ编辑器中已经包含了我们上面所说的三种数据区域了。我们可以看到使用这种方法导入数据的缺陷是该M函数无法识别工作表(Sheet)。

将Excel文件导入Power Query的多种方法介绍,最后一种很好用

最后双击 DynamicRange 左边的绿色的 「Table 」,就能将 DynamicRange 数据区域导入 Power Query了 。

将Excel文件导入Power Query的多种方法介绍,最后一种很好用

将Excel文件导入Power Query的多种方法介绍,最后一种很好用

End.爱数据网专栏作者:JaryYuan专栏名称:Power BI 自动化与可视化专栏简介:Excel、Power BI、Python等学习交流园地。Excel黑科技挖掘,Python小技巧。致力于办公自动化、职场效率提升、数据分析及可视化设计个人公众号:JaryYuan

  • 我的微信公众号
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: