首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >666,一键生成自定义函数!“参数+示例+自定义函数”组合实在太神奇! | PQ实战

666,一键生成自定义函数!“参数+示例+自定义函数”组合实在太神奇! | PQ实战

作者头像
大海Power
发布于 2022-02-18 08:28:47
发布于 2022-02-18 08:28:47
1K0
举报

- 1 -

在使用Power Query的时候,我们会编写一些自定义函数,以方便在多个地方需要进行同样的处理时,可以直接调用。

其中,有一类自定义函数,是我们先用一个例子做试验,试验成功之后,再改为自定义函数的。

比如说,我们要从天气网站上获取一些历史数据,可以对某个城市其中1个月的数据先试着获取并做好处理,然后再改为自定义函数:

下面,我们将以此为例,看看怎样先做例子,然后,再一键生成自定义函数,而且,一键生成的自定义函数,还能随着我们所做的例子更新而更新!

- 2 -

首先,要一键生成自定义函数,有个小小的条件,我们先将要作为函数参数的内容用参数引用的方式来实现,除此以外,其他的步骤就是使用Power Query正常处理数据的步骤,具体过程如下:

Step-01 创建参数

进入Power Query编辑界面,单击“主页”菜单,一次单击“管理参数/新建参数”按钮:

在弹出的“管理参数”对话框中,依次填/选好参数的“名称、类型、当前值”等内容后,单击“确定”按钮:

这时,我们就生成了一个名称为“年月”的参数,且其默认值为“201101”:

Step-02 新建源,从Web获取数据

在填写链接的对话窗中,选择“高级”,将URL的部分分段输入(可通过单击“添加部件”按钮增加),即参数前、后的内容直接复制粘贴进去,而参数放在中间部分,通过选择类型和参数实现,最终如下图所示:

单击“确定”按钮后,我们将可以直接获取到广州市2011年1月份的数据:

Step-03 一键创建自定义函数

在Power Query左侧的查询清单中,右键单击刚生成的“广州历史天气预报”查询,在弹出的菜单中单击“创建函数”:

在弹出的“创建函数”对话框中,输入函数名称并单击“确定”按钮:

此时,前面创建的年月参数、广州历史天气查询以及生成的函数会被合并到一个“组”里:

而且,如果我们查看“获取天气信息”函数的属性,你会发现,其中有一项提示“此函数的定义随查询……的更新而更新”!

真有这么牛逼?!!!我们试试在“广州历史天气……”查询里删掉一列:

此时,我们可以看到,“广州历史天气预报……”查询里增加了一个“删除的列”的步骤:

我们再查看一下“获取天气信息”函数里的代码——也自动增加了“删除的列”的步骤!!!

实际上,我们如果进入高级编辑器,就会发现,创建的函数实际上是完整复制了“广州历史天气预报……”查询里的代码,然后再在外面套了一个自定义函数参数的写法:

只要我们不人为(手贱)去改这段代码,Power Query就会自动地用“广州历史天气预报……”查询里的代码来替换这一部分。而只要我们稍作改动,哪怕只是改一下形式,比如在参数后面加个回车换个行:

两者之间的联动就会失效——这也不是说Power Query还是不够智能,毕竟,谁知道你只是敲了个回车?总不能每次变更都对代码做个全文对比看差异在哪里,然后决定替换哪一部分内容!

- 3 -

最后,再说一下这种方式的一个好处:因为函数和示例间可以联动,让我们可以非常方便地去按示例数据的情况自动调整对应的函数,省去了先尝试做示例再修改为函数的麻烦,也避免了直接在函数中调整数据处理方式无法直观看到处理结果的不便,妥妥的一箭双雕啊!

当然,这个例子里,我们还可以针对“城市”做成一个参数,然后生成一个带2个参数的自定义函数,然后在后续构造城市、月份列表的基础上,调用该函数,直接获取多个城市多月份的天气预报数据,有兴趣的朋友可以动手试试。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-01-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Excel到PowerBI 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
个人永久性免费-Excel催化剂功能第29波-追加中国特色的中文相关自定义函数
原文在简书上发表,再同步到Excel催化剂微信公众号或其他平台上,文章后续有修改和更新将在简书上操作, 其他平台不作同步修改更新,因此建议阅读其他出处的文章时,尽可能跳转回简书平台上查看。
Excel催化剂
2021/08/19
1.1K0
妙用参数,一键切换多个数据源 | Power BI实战
在Power BI(Query)里,可以通过参数的应用,简化数据的接入或处理过程,比如我前面分享过的:
大海Power
2022/11/07
2.4K0
妙用参数,一键切换多个数据源 | Power BI实战
利用Power Query的参数设置来快速生成自定义函数
此外通过设置参数,可以很方便的创建自定义函数。例如在使用导入文件夹数据时,通常会让我们填写文件夹目录地址参数内容,如图1所示。通过下拉菜单,可以发现其有可选择的参数。
逍遥之
2020/04/26
3K0
如何给自定义函数做备注及说明(1)
我们平时在使用Power Query中,针对比较繁琐的过程,都希望能生成一个函数来进行处理,平时使用的时候直接输入参数即可达到目的,而不需要每次都进行同样的代码输入。毕竟Power Query的存在本身就是自动化办公的作用,既然要作为自定义函数使用,那数量多了难免会不记得具体的用法,所以对自定义函数做备注就显得尤为重要。
逍遥之
2020/03/23
8380
Mysql的基本函数–与自定义函数
类似于java的方法将一组逻辑语句封装在方法体 对外暴露方法名 事先提供好的一些功能可以直接使用 函数可以用在select 语句及其子句上 也可以用在update ,delete 语句当中
全栈程序员站长
2022/09/18
2.9K0
Mysql的基本函数–与自定义函数
Excel Power Query抓取多个网页数据并配合Power Pivot进行分析
本节内容使用Excel的Power Query和Power Pivot组件,抓取多个网页数据,进行清洗、建模和分析。 第一部分:从网页动态抓取数据 使用Power Query不仅可以获取本地的Excel文件数据,还可以获取网页数据。 本节介绍如何使用Power Query获取新浪网新浪体育频道的新浪直播室网页中的足球排行榜数据,主要获取列表中的全部赛季的球队数据,赛事主要获取前5项数据(前5项赛事的数据结构是相同的),如图所示。 网址: http://match.sports.sina.com.cn/fo
博文视点Broadview
2023/04/04
4.1K1
Excel Power Query抓取多个网页数据并配合Power Pivot进行分析
PQ-M及函数:结合前期案例,学习自定义函数
大海:首先咱们拿个简单的例子来看看,还记得拿个《模拟Excel中的Trim函数》吗?
大海Power
2021/08/30
5400
Apipost自定义函数深度实战:灵活处理参数值秘籍
在开发过程中,为了更好地处理传递给接口的参数值,解决在调试过程中的数据处理问题,经常需要用到函数处理数据。
多吃核桃
2025/03/28
1540
Apipost自定义函数深度实战:灵活处理参数值秘籍
MySQL自定义函数与存储过程示例
函数:可以完成特定功能的一段SQL集合。MySQL支持自定义函数来完成特定的业务功能。 创建自定义函数(User Defined Function 简称UDF)的语法如下:
星哥玩云
2022/08/17
1.8K0
微信公众平台开发 自定义菜单
自定义菜单能够帮助公众号丰富界面,让用户更好更快地理解公众号的功能。开启自定义菜单后,公众号界面如图所示:
庞小明
2018/09/19
2.1K0
微信公众平台开发 自定义菜单
多文件数据横向汇总,怎么整?| Power Query实战
最近遇到一位朋友提问:怎么将多个文本文件(据说100多份)按列(横向)汇总?经过详细了解,需求如下图所示:
大海Power
2023/02/06
1.6K0
Power Query用自定义函数(筛选前N名)
源 =List.Intersect({Table.ToRecords(chinese),Table.ToRecords(maths)}),
哆哆Excel
2022/10/31
8240
如何高效开发jmeter自定义函数
Jmeter是一款开源的性能测试工具,目前是行业内使用率最高的性能测试工具之一,Jmeter是使用JAVA语言开发的,本文介绍如何使用JAVA语言开发自己需要的扩展函数 目前业界流行的两种开发模式,本文介绍第二种 1、使用Jmeter二次开源环境,直接在org.apache.jmeter.functions包下面开发自己需要的函数,然后导出该jar包,替换Jmeter目录的ApacheJMeter_functions.jar文件 2、直接在Maven 项目下开发自定义函数,然后打包,该方法、简单、高效
jmeter技术研究
2019/10/19
9600
如何高效开发jmeter自定义函数
一步一步教你PowerBI利用爬虫获取天气数据分析
  对于爬虫大家应该不会陌生,我们首先来看一下爬虫的定义:网络爬虫是一种自动获取网页内容的程序,是搜索引擎的重要组成部分。网络爬虫为搜索引擎从万维网下载网页,自动获取网页内容的应用程序。看到定义我们应该已经知道它是可以从万维网上下载网页解析网页数据的。大家想一下在数据分析情景中它的应用场景有哪些?采集天气数据,网站采集文章,采集各种票务信息,股票信息采集等等有很多地方都会用的爬虫采集数据进行数据分析。通过数据分析增加分析维度信息,尤其是行业数据对标。
黄昏前黎明后
2020/02/14
2.7K0
一步一步教你PowerBI利用爬虫获取天气数据分析
APOC自定义函数和过程
@TOC[1] 定义说明 APOC提供相关过程来创建用户自定义的函数和过程。这些函数和过程实际上是参数化的Cypher语言查询,类似宏(Macro)的概念。在下面的案例中图库版本为ongdb-3.5.22。百度概念解释[2]宏(英语:Macro)是一种批量处理的称谓。计算机科学里的宏是一种抽象(Abstraction),它根据一系列预定义的规则替换一定的文本模式。解释器或编译器在遇到宏时会自动进行这一模式替换。对于编译语言,宏展开在编译时发生,进行宏展开的工具常被称为宏展开器。宏这一术语也常常被用于许多
马超的博客
2022/07/04
7220
APOC自定义函数和过程
Python自定义函数
我们之前使用的比如print(),就是Python为我们提供好的内建函数,但是你也可以自己创建函数,而这种函数呢,我们将之称为自定义函数。
数据山谷
2020/12/08
8990
学习LAMBDA函数:将Excel公式转换为自定义函数(上)
引言:本文学习整理自microsoft.com,LAMBDA的真正的解决了Excel公式存在的先天不足,让Excel公式真正的强大起来了。
fanjy
2023/02/16
1.6K0
学习LAMBDA函数:将Excel公式转换为自定义函数(上)
Power Query 系列 (13) - 自定义函数
以工资类所得应交个税为例,最新的个税起征点为 5000 并按下表的级次进行缴税(假设没有其它扣除项)。
StoneWM
2021/03/25
2K0
pg自定义函数动态生成表名
想在postgres数据库中动态查询【'table_2023'、'table_2024'...】这种格式表的数据。
chimchim
2023/12/23
2710
pg自定义函数动态生成表名
皕杰报表之自定义函数
一是将编译好的.class文件打成jar包, 点击【添加JAR】,将jar包导入;
用户10133222
2022/12/12
3440
推荐阅读
相关推荐
个人永久性免费-Excel催化剂功能第29波-追加中国特色的中文相关自定义函数
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档