[分享] M 公式 ?? 你造吗, Power Query 为我们提供了新的强大的函数

  [复制链接]
查看98100 | 回复116 | 2021-2-19 01:58:26 | 显示全部楼层 |阅读模式
Power Query 在Excel2010和2013中是以插件形式存在的,Excel2016中已经内置这一功能了,其可见微软对其的重视。
值得欣慰的是,PQ不仅为我们快速导入不同数据源数据提供便利,也为我们提供了一系列新的函数,PQ中的公式简称为M公式,与PowerPivot中的DAX表达式是两兄弟。
新的函数里面,有大量功能优异的函数,以下仅做一个小示例,便于大家有个印象——从此我们有了更多的选择,相比于数组公式、自定义函数等。
比如新的文本查找函数,可以自定义是否区分大小写,一次性找出多个字符在某个字符串中出现的第一次、最后一次或者所有位置等等,更多的功能值得我们去学习和发现

以下DADA列是字母数字混排,后三列依次提取文本、数值、不重复数值,用M公式是很容易实现的。
仅保留文本 = Text.Trim(Text.Remove([DATA],{"0".."9"})," ")
数值 = Text.Remove(Text.Trim(Text.Remove([DATA],{"A".."z"})," ")," ")
不重复数值 = Text.Combine(List.Distinct(Text.ToList([数值])))

174654nk9f8eefseeko00k.png
以下再给2个Find函数的加强版函数示例,可以查找一个或多个字符在文本中出现的第一次、最后一次或者所有位置,并可以自定义是否区分大小写。

141943mtytdd4h40c04nfy.jpg
8=%3C~.rar (170 Bytes, 下载次数: 0)
回复

使用道具 举报

leap | 2021-2-19 02:05:27 | 显示全部楼层
还没有尝试过,多谢分享。
回复

使用道具 举报

haitian | 2021-2-19 02:11:27 | 显示全部楼层
M公式比普通公式计算效率更高吗?
不过函数名可不短呀
回复

使用道具 举报

bbxing | 2021-2-19 02:14:27 | 显示全部楼层
要学的的东西太多了
回复

使用道具 举报

yipianlvdi | 2021-2-19 02:19:27 | 显示全部楼层
M公式比普通公式计算效率更高吗?
不过函数名可不短呀


M函数名称的特点是在普通函数名前加了其类别名称,比如处理文本的函数都是 Text.函数名
除此之外,与普通函数差异不大。
计算效率应该比自定义函数高,毕竟这是系统内置函数
回复

使用道具 举报

大星星 | 2021-2-19 02:23:28 | 显示全部楼层
还没有尝试过,多谢分享。


M函数有400多个,里面的东西太多了,可以看看
回复

使用道具 举报

天涯 | 2021-2-19 02:31:28 | 显示全部楼层
关于m函数的资料哪里可以找到呀
回复

使用道具 举报

fox9888 | 2021-2-19 02:33:28 | 显示全部楼层
我的是excel2007,没看到PQ??
回复

使用道具 举报

modena | 2021-2-19 02:42:28 | 显示全部楼层
老师,我想在PQ里如何实现如 IF 之类的逻辑操作呢?比如我新添加了一列,该列的取值是需要对另外一列的值进行 IF 逻辑操作才能得出的。
回复

使用道具 举报

美石 | 2021-2-19 02:45:29 | 显示全部楼层
尝试过,多谢分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则