一挥资讯

总结下,你需要做的就是:进入民政部找到最新的行政区划链接并复制粘贴

简介: 总结下,你需要做的就是:进入民政部找到最新的行政区划链接并复制粘贴到参数表格里在【数据】选项卡点击【全部刷新】就这四步,耗时是不是只要一分钟?

我曾在简书上写过两篇帖子,介绍了用Power BI Desktop如何从国家民政部网站获取最新行政区划信息。

其中第二篇帖子在第一篇基础上封装了一个函数,使得获取全国最新行政区划信息不需要任何多余的操作,只需要刷新就行了。

然而,由于Excel不支持Web.BrowserContents()函数,所以在Excel中做不到全自动获取最新行政区划信息(这是个遗憾)。

但是我们还是可以通过手动方式在30秒至一分钟内获取全国最新行政区划信息并整理成我们想要的形式(如区分省、市、县,国家民政部网站没有区分)。

01建立一个参数表格首先我们在一个新的Excel文件中,建立一个参数表格。

把其中的汉字换成民政部网站上的行政区划信息链接地址(抱歉我在这里没法给出,因为百家号限制)02把参数表格引入PowerQuery查询比较简单,直接引入一个来自于表格/区域的数据源。

具体操作如下:在Excel2016及以上版本(其他低版本需要安装并PowerQuery插件,一下就知道怎么操作了)中,鼠标放在参数表格的数据区域,然后点击【数据】选项卡上的【自表格/区域】:然后PowerQuery会自动启动查询编辑器,并进入查询编辑页面。

我们在第一行右键点击,选择【深化】,这一步是直接提取出参数表格中的URL(记得要在参数表格中把汉字换成实际的URL),备用。

03新建一个空白查询并复制PowerQuery代码仍然保持在查询编辑界面,这时我们要进入获取最新行政区划的关键操作部分。

在查询编辑窗口左侧的查询导航栏空白处,右键点击,新建一个空白查询:然后点击菜单栏的【高级编辑器】:清空里边的所有代码:然后把下面的代码粘贴进去let源 = Web.Page(Web.Contents(url)),Data0 = 源{0}[Data],删除的顶端行 = Table.Skip(Data0,1),#"Promoted Headers" = Table.PromoteHeaders(删除的顶端行, [PromoteAllScalars=true]),#"Removed Other Columns" = Table.SelectColumns(#"Promoted Headers",{"行政区划代码", "单位名称"}),#"Changed Type" = Table.TransformColumnTypes(#"Removed Other Columns",{{"行政区划代码", Int64.Type}}),#"Removed Errors" = Table.RemoveRowsWithErrors(#"Changed Type", {"行政区划代码"}),#"Changed Type1" = Table.TransformColumnTypes(#"Removed Errors",{{"行政区划代码", type text}}),#"Added Custom" = Table.AddColumn(#"Changed Type1", "省级", each if Text.End([行政区划代码],4)="0000" then [单位名称] else null),#"Added Custom1" = Table.AddColumn(#"Added Custom", "地级", each if Text.End([行政区划代码],2)="00" then [单位名称] else null),#"Filled Down" = Table.FillDown(#"Added Custom1",{"省级", "地级"}),#"Renamed Columns" = Table.RenameColumns(#"Filled Down",{{"单位名称", "县级"}}),#"Reordered Columns" = Table.ReorderColumns(#"Renamed Columns",{"行政区划代码", "县级", "地级", "省级"})in#"Reordered Columns"这样我们的操作就完成了。

你得到的结果应该类似于:04把结果加载到Excel表格最后一步是把结果加载到Excel表格,操作也比较简单,还是在查询编辑器窗口,左上角点击【关闭并上载】并选择【关闭并上载至…

】是灰色不可用,这个没关系,那就直接点【关闭并上载】好了,我们到Excel中去加载。

关闭并加载后,你应该在Excel中看到如下的界面:我们点击【加载到…

】,这时会弹出操作窗口,让选择加载方式及目的地:你可以选择加载到现有工作表,也可以做其他选择,比如加载成数据透视表之类,或者添加到数据模型,和其他表格建立关联,进行下一步处理,随你喜欢。

假设现在你从民政部网站获得了最新的全国行政区划代码链接,你只需要将其填入我们的参数表格,然后点击【数据】选项卡上的【全部刷新】,这样在10-30秒内,全国最新行政区划就从民政局网站上获取下来,并根据你在PowerQuery中做的调整结果,显示在Excel表格中了。

总结下,你需要做的就是:进入民政部找到最新的行政区划链接并复制粘贴到参数表格里在【数据】选项卡点击【全部刷新】就这四步,耗时是不是只要一分钟?

当然,和用PowerBI Desktop获取最新行政区划信息的方法相比,还不够自动化。

用PowerBI Desktop获取最新行政区划信息,借助Web.BrowserContents()函数的威力,能够省略掉1-3步,只需要第4步刷新就行了,那样就只需要若干秒了。


以上是文章"

总结下,你需要做的就是:进入民政部找到最新的行政区划链接并复制粘贴

"的内容,欢迎阅读一挥资讯的其它文章