欢迎访问 重庆118考试网(cqrsksw.cn)

重庆人力资源和社会保障网 | 重庆事业单位招聘 | 重庆企业招聘
重庆118网

用了这么多年的Excel,我还是不知道M函数是什么。如果你懂一个词,不要后悔!

时间:2020-04-27 19:33 来源: 重庆118百科知识网 网址: www.cqrsksw.cn 编辑:小多

私信回复关键词【插件】~

获取Excel高手都在用的“插件合集+插件使用小技巧”!

许多同学哭爹喊娘、歇斯底里地说要学 PQ!

Power Query 里最强大的还是 M 函数了,它算是 Excel 函数的加强版。

今天总结了 M 函数入门必知的 6 个基础知识,赶紧收藏学习吧!

01

什么是 M 函数?

M 函数是微软为 MicroSoft Power Query 设计的公式语言,简称 M 函数。

所以顾名思义,M 函数只能用在 Power Query 中。

M 函数和 Excel 中的函数相比,有下面几个优势:

❶ 数据处理能力更强。

Excel 的函数公式处理上万行数据的时候,就会出现明显的卡顿。

M 函数是基于 Power Query 的,Excel 中的数据需要先加载到 Power Query 中,数据处理能力倍增,处理几十万行的数据毫无压力。

❷ 数据计算方式更丰富。

普通的 Excel 函数,处理数据通常只有数据计算、文本处理、数据查询这几种方式。

而 M 函数基于 List、Table 等对象,可以实现分组统计、透视列、逆透视、合并查询、拆分表格、表格结构重组等更多复杂的表格操作。

02

M 函数能干啥?

举一个很简单的例子。

我们经常需要根据某个条件,查询所有符合的记录。

用了这么多年Excel,还不知道M函数是啥?一文弄懂,不学后悔!

在 Excel 中要编写这么复杂的公式。

= Table.SelectRows(源, each ([部门] = "工程部"))

而在 M 函数中,只需要一个 SelectRows 一个函数,就可以轻松实现。

用了这么多年Excel,还不知道M函数是啥?一文弄懂,不学后悔!

= Table.SelectRows(源, each ([部门] = "工程部"))

而且计算的结果和原始数据保持联动,数据发生变动,统计结果只需要右键,就可以一键刷新。

用了这么多年Excel,还不知道M函数是啥?一文弄懂,不学后悔!

03

M函数编写位置

接下来,我们从函数编写第一步开始,再来看看 Excel 函数和 M 函数,更细节的对比。

Excel 函数

Excel 在任意单元格都可以写函数,只要用等号开头就可以。

用了这么多年Excel,还不知道M函数是啥?一文弄懂,不学后悔!

❶ 可以在单元格里写=A2,引用 A2 单元格的值;

❷ 可以在公式栏里写=SUM(B3:D4)函数,对数据求和。

M 函数

M 函数在 Power Query 中编写,同样也有两种方法:

可以在公式栏里写 M 函数:

用了这么多年Excel,还不知道M函数是啥?一文弄懂,不学后悔!

步骤如下:

❶ 先点击 fx,创建一个新的步骤然后开始;

❷ 在公式栏中开始写公式。

也可以在「高级编辑器」中,用代码的形式来写 M 函数:

用了这么多年Excel,还不知道M函数是啥?一文弄懂,不学后悔!

步骤如下:

❶ 在「主页」菜单中,点击「高级编辑器」;

❷ 给这个步骤起一个名字 Sumresult;

❸ 其名字后面编写 M 函数公式。

04

函数名称

函数公式根据用途,可以分为统计函数、文本函数、查询函数等类型。

Excel 函数

Excel 中可以在「公式」栏中,根据分类选择使用对应的函数。

用了这么多年Excel,还不知道M函数是啥?一文弄懂,不学后悔!

如果是直接手写函数,没有相关的分类提示。

▋M 函数

M 函数的分类管理,使用了编程中的「包」管理策略。

根据不同的数据类型,设定了不同的「包」,使用函数的时候,需要先写「包」名称。

用了这么多年Excel,还不知道M函数是啥?一文弄懂,不学后悔!

比如,前面统计 3 月销量的公式,步骤如下:

❶ 先写 List 包名称;

❷ 然后写 List.Sum 函数,对表格「源」中的「3 月」这一列求和。

所有的 M 函数,都要先写包名称。

05

参数类型

参数就是函数公式计算需要的原材料。

M 函数学习的一个大门槛,就是对于参数类型(或者说数据类型)的理解。

Excel 函数

函数参数类型,都是具体的数值,这个数值有两种参数形式:

❶ 数值,直接写在函数中;

❷ 引用,通过单元格引用,写入函数中。

用了这么多年Excel,还不知道M函数是啥?一文弄懂,不学后悔!

M 函数

除了常规的数值类型,M 函数中增加了 3 个数据类型:Record、List、Table。

引入了编程中的「对象」的概念,增加了学习难度。

❶ Record。

多个不同类型的数据的合集。

比如一个人的姓名、数量等信息,可以以人为单位,这个人的类型就是 Record。

用了这么多年Excel,还不知道M函数是啥?一文弄懂,不学后悔!

在 Power Query 中,单元格里显示的是数据类型「Record」。

鼠标选择单元格后,下方的预览面板中,可以查看 Record 的明细。

❷ List。

一组数据清单,类似 Excel 中的数组。

这个数组中的数据,可以是数值,也可以是一组 Record,也可以是一组 List,一组 Table。

用了这么多年Excel,还不知道M函数是啥?一文弄懂,不学后悔!

这个 List 中既包含了基础的数据,也包含了 Record 记录和另一个 List 数据。

❸ Table。

表格类型数据。

没错的,M 函数中可以把一整个表格,都当成参数,而且是常规操作。

因为 M 函数计算的最终目的就是返回一个表格。

用了这么多年Excel,还不知道M函数是啥?一文弄懂,不学后悔!

在预览区域中,可以看到表格的字段名称、数据内容。

06

返回结果

返回结果,是指函数公式计算之后返回到单元格里的数据。

Excel 函数

仔细回顾一下 Excel 中的函数公式。

无论是 SUM 函数,VLOOKUP 函数,返回的数据类型都非常单一,全部都是 1 个单独的数值。

然后我们再通过「填充公式」的方式,计算出所有符合要求的数据。

用了这么多年Excel,还不知道M函数是啥?一文弄懂,不学后悔!

无论公式长短,返回结果都是一个数值。

M 函数

M 函数中的参数多了 Record、List、Table 三种类型,那么对应的,M 函数也可以把这三种数据类型,作为计算结果返回到 Power Query 中。

返回Record数据:

这段公式将返回一个 Record 数据:

= [姓名="拉登Dony",数量=123]
用了这么多年Excel,还不知道M函数是啥?一文弄懂,不学后悔!

返回 List 数据:

这段公式将返回一个 List 数据:

= {1,2,3,4}
用了这么多年Excel,还不知道M函数是啥?一文弄懂,不学后悔!

返回 Table 数据:

这段公式将返回一个 Table 数据:

= #table({"姓名","数量"},{{"dony",123},{"king",456}})
用了这么多年Excel,还不知道M函数是啥?一文弄懂,不学后悔!

大部分情况下,我期望返回的结果都是一个 Table 类型,因为需要转成表格上载到 Excel 中。

而 List 和 Record 通常是数据计算过程中处理的数据。

特别是 List 类型数据,包含了大量核心的 M 函数,也是后续深入学习的重点。

07

总结

如果根据诞生的年份来看,Excel 函数已经是一个中老年人。

大家都非常的熟悉了,合作起来也更顺畅,但技术陈旧,处理复杂需求的时候,会略显疲惫。

M 函数则是小伙正当年,技术高、能力强,手上一大把的神器函数,但是人生地不熟,语言有障碍,前期沟通成本略高。

看完今天的文章,你觉得自己该不该学习 M 函数呢?留言告诉我吧?

私信回复关键词【插件】~

获取Excel高手都在用的“插件合集+插件使用小技巧”!

用了这么多年Excel,还不知道M函数是啥?一文弄懂,不学后悔!



更多关于"用了这么多年的Excel,我还是不知道M函数是什么。如果你懂一个词,不要后悔!"信息,请多多关注哦!

本文信息参考自:中国人事考试网

二维码
意见反馈