乐于分享
好东西不私藏

EXCEL|M语言中的自定义函数

EXCEL|M语言中的自定义函数
熟练掌握 M 语言中的自定义函数是 Power Query 学习进程中一个非常重要的里程碑。在 M 语言中自定义函数也并不意味着一定要手写所有 M 代码,我们可以基于现有的查询创建自定义函数,重点是找出可用参数替代部分。选择任意查询,单击鼠标右键,在弹出的菜单中能看到 “创建函数” 命令,如下图所示。

自定义函数的基本语法格式是:函数名称=(参数1, 参数2, 参数3...) => 表达式如果只需要创建函数,可以省略函数名称,Power Query 默认以查询名称为函数名称。以下是两个简单的函数示例:

(x as number) => x + 1 // 指定数值+1(初始 as number, 结束 as number) => {初始 .. 结束} // 生成从初始到结束的连续序列

以上函数未指定函数名称,查询的名称默认为函数名称。在圆括号()里面指定参数,参数至少有一个,多个参数用逗号分隔。as用于限定参数数据类型,as number可以不写,则输入的参数可以为任意类型的。=>是固定组合,可以理解为带参数赋值。

将以上代码分别复制到高级编辑器中,将返回类型为函数的查询,如下图 所示。

如果自定义函数包含多个步骤,在函数内部需要用到letin分别定义步骤及返回结果。以下函数包含两个步骤,用let表达式定义计算过程,用in返回最终计算结果。

(x) =>let    步骤1 = x + 1,    步骤2 = 步骤1 + 1in    步骤2

ok,明天见。