会当临绝顶,一览众山小
Excel 文件可以说是我们平时办公中接触最多的文件类型。这篇文章主要讲讲将 Excel 文件导入Power Query 的几种情况。
以下是本文使用的Excel示例文件:Excel Data.xlsx
1、从外部导入
从外部导入是指新建空白工作簿,将 Excel Data 作为外部数据源进行导入。这种方法和我们上文导入CSV文件一样。获取数据时选择「从工作簿」即可。
这种方法很简单,不再详细介绍了。值得注意的是在导航器中 Excel 的智能表格和工作表会以不同的图标加以区分。
前面四个有蓝色标题行的为智能表格,后面两个下方有选项卡的为工作表
2、从Excel内部导入
从 Excel 内部导入 Power Query 是指直接在 Excel Data.xlsx 工作簿中将数据加载进入 Power Query 编辑器。
这种情况下将在原始的源数据表中创建查询。操作步骤如下:
选择数据区域任意单元格
在「获取和转换数据」找到 「自表格/区域」
如果数据区域是以智能表格形式存在的,则会直接加载进入PQ编辑器。如果是普通区域,Excel 将弹出「创建表」对话框,并指定区域是否包含标题。
数据加载进PQ编辑器以后,查询名称将自动套用智能表格名称。而在应用步骤中并没有提升标题的步骤,因为在智能表中已经指定了列名。
3、Excel.CurrentWorkbook()导入数据
当我们的 Excel 文件中包含命名区域、动态命名区域、智能表时,可以使用 M 函数 Excel.CurrentWorkbook() 将当前工作簿中的不同数据区域一次性导入。
从名称管理器中,我们可以看到 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)。
最后双击 DynamicRange 左边的绿色的 「Table 」,就能将 DynamicRange 数据区域导入 Power Query了 。
公众号后台回复
「极简入门」
,获取《极简 PowerBI 入门手册》,从下载安装到数据建模,轻松入门。