Power Query 101

在本教程中,你将使用 Excel 的 Power Query 体验创建一个从网页导入数据的查询。 作为此过程的一部分,你将导航到网页上的可用表,并应用数据转换步骤以仅显示你想要查看的数据。 Power Query 记录所有步骤,并且每当刷新数据时都将重复这些步骤。

步骤1:连接到维基百科页面

Excel 2016:在 "数据" 选项卡上," Web" > 中单击 "新建查询>"。 如果看不到 "新建查询" 按钮,请单击 "从 Web>数据"。

Excel 2010-2013:在 " Power Query " 选项卡上,单击 "从 Web"。 如果看不到 "Power Query" 选项卡,请确保已下载并安装Power query 加载项

  1. 在 "从网站" 对话框中,粘贴 " URL " 文本框中的维基百科 URL (http://en.wikipedia.org/wiki/UEFA_European_Football_Championship)。

    Power Query > 自网站 >“输入 URL”对话框
  2. 单击“确定”。

    建立与网页的连接后,您将在 "导航器" 窗格中看到 "维基百科" 页面上可用的表格列表。 你可以单击每个表以查看右侧窗格中显示的快速预览。

    Power Query > 自网站 > 导航器表格视图

  3. 双击 "结果 [编辑] " 表,"查询编辑器" 将打开,其中包含 "联赛" 数据。

返回页首

步骤2:对数据进行整形

既然已在查询编辑器中打开了表,您就可以清理和调整数据,以满足您的需要。 在此步骤中,您将通过删除除年份最终获胜者之外的所有列来调整数据的形状。

  1. 在 "查询预览" 网格中,使用Ctrl + 单击选择 "年份" 和 "最终获胜者" 列。

  2. 单击 "删除列" > "删除其他列"。

    Power Query > 查询编辑器 > 删除列

步骤3:清理数据

在此步骤中,你将通过替换值和筛选数据来清理数据。

  1. 选择 "年份" 列。

  2. 查询编辑器中,单击 "替换值"。

  3. 在 "替换值" 对话框中,在 "要查找的值" 文本框中键入 "详细信息",并保留 "替换为" 文本框为空。

  4. 单击“确定”。

    Power Query > 查询编辑器 > 替换值

步骤4:筛选列中的值

现在,你将筛选 " year " 列以显示不包含 "Year" 的行。

  1. 单击 "年份" 列上的 "筛选" 下拉箭头。

  2. 在 "筛选" 下拉列表中,取消勾选 "年份"。

  3. 单击“确定”。

Power Query-查询编辑器 > 筛选以清理数据

步骤5:为查询命名

现在是开始为你创建的查询命名的时候了。

在 "查询设置" 窗格中的 "名称" 文本框中,输入 "欧洲杯获奖者"。 如果单击 "所有属性" 链接,还可以在 "说明" 文本框中输入查询说明。

Power Query > 查询编辑器 > 查询设置

步骤6:将查询加载到工作表

最后,您现在可以将 "欧元杯获奖者" 查询加载到工作表。

  1. 在左上角,单击 "关闭 & 加载"。

    Power Query 会将查询结果返回到工作表。

    如果需要稍后更新数据,请右键单击数据区域中的任意位置,然后单击 "刷新"。 网页中的任何新信息将自动更新。

步骤7:发现场景背后发生的情况

  1. 单击数据中的任意位置,然后在 "查询" 选项卡上,单击 "编辑"。

  2. 在右侧,请注意应用的步骤列表。 在执行查询活动时,创建了查询步骤。 每个查询步骤都具有使用 "M" 语言编写的相应公式。

  3. 下面是每个步骤的说明:

查询步骤

任务

公式

来源

连接到 web 数据源

= Page (Web.config ("http://en.wikipedia.org/wiki/UEFA_European_Football_Championship"))

导航

选择要连接的表

= Source {2} [Data]

已更改类型

更改类型-Power Query 自动执行此操作

= TransformColumnTypes (Data2,{{"Year",键入 text},{"主机",类型文本},{"",类型文本},{"最终的运行时,键入文本},{" 最终的运行程序 ",键入文本},{" 最终的运行时 ",键入文本},{" 2 ",键入文本}," 第三个位置匹配第三个位置 ",键入文本" {""位置匹配分数",键入 text},{"第三个位置匹配第四个位置",键入 text},{"3",键入文本},{"团队数",键入 text}})

RemovedOtherColumns

删除其他列以仅显示感兴趣的列

SelectColumns

= SelectColumns (# "已更改类型",{"最终获胜者","Year"})

ReplacedValue

替换值以清理所选列中的值

ReplaceValue

= ReplaceValue (# "已删除其他列","详细信息","",Replacer,{"Year"})

FilteredRows

筛选列中的值

SelectRows

= SelectRows (# "已替换值",每个([Year] <> "Year"))

通过单击 "Power Query" 功能区中的 "高级编辑器" 选项,您可以完整地查看 M 代码。 有关 Power Query 公式语言的详细信息,请参阅了解 Power Query 公式

需要更多帮助吗?

可随时在 Excel 技术社区中咨询专家,在解答社区获得支持,或在 Excel User Voice 上建议新功能或功能改进。

另请参阅

Power Query 在 Excel 2016 中称为“获取和转换”

从外部数据源导入数据

带有 Power Query 的形状数据

扩展你的 Office 技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×