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

  [复制链接]
dg0013111 | 2021-2-19 02:48:29 | 显示全部楼层
楼主,请教一下要想返回e第二次出现的位置该如何写公式呢?思考了很久还是没有答案,没有找到类似于mid的函数,想返回所有位置得到的那个list里的第2个值也不知道怎样写,不知道类似于index的公式是什么,也不知道类似于search的函数是什么,不会的太多了



补充内容 (2016-1-22 15:39):

经过两个月的学习,我终于找到了解决办法,其实挺简单的,用Text.PositionOf([DATA],"e",Occurrence.All){2}就可找到e第二次出现的位置,看看帮助文件就可解决
回复

使用道具 举报

chan | 2021-2-19 02:54:29 | 显示全部楼层
老师,我想在PQ里如何实现如 IF 之类的逻辑操作呢?比如我新添加了一列,该列的取值是需要对另外一列的值进 ...


if ...then... else...就可以了。刚好前两天有用到这个。
回复

使用道具 举报

水木 | 2021-2-19 03:01:29 | 显示全部楼层
搞不懂Text.Trim:
Text.Trim("xyAyz", "xy") equals error

为什么会出错呢?我理解上式应该等于Ayz,在power query里测试的结果如下:
Expression.Error: 该值不是单字符的字符串。
详细信息:
  Value=http://club.excelhome.net/xy

还有”Text.Trim("xyAyz", {"x","y","z"}) equals "A"“也看不懂,为什么最后结果是A呢。
回复

使用道具 举报

dajun | 2021-2-19 03:06:30 | 显示全部楼层
搞不懂Text.Trim:
Text.Trim("xyAyz", "xy") equals error


这个函数第2个参数可以是字符长度为1的单个字符,也可以是一个list,而且list的各个元素字符长度也为1

“X”属于第一种情形

{"X","Y"}属于第2种情形 而“XY” 是不允许的 错误的原因:Expression.Error: 该值不是单字符的字符串

当然,等2参数也可以省略,这时候会移除空格

当使用list作为第2参数,函数会依次删除第一个文本首尾单个字符

Text.Trim("xyAyz", {"x","y","z"})第一个X 在list中,删除得到yAyz;最后一个Z在list中,删除得到yAy;然后进行第2轮判断,两边的y均删除最后返回A
回复

使用道具 举报

koala | 2021-2-19 03:08:30 | 显示全部楼层
这个函数第2个参数可以是字符长度为1的单个字符,也可以是一个list,而且list的各个元素字符长度也为1

...


感谢解答,终于明白了。也就是说trim是搞定文本首尾字符的删除,而第二个参数只能是单字符。这个单字符可以是字母或汉字。再次感谢
回复

使用道具 举报

沙包 | 2021-2-19 03:14:30 | 显示全部楼层
太多东西了。。。
回复

使用道具 举报

软心人 | 2021-2-19 03:18:30 | 显示全部楼层
谢谢分享谢谢分享
回复

使用道具 举报

Nicky | 2021-2-19 03:23:31 | 显示全部楼层
老师,哪里有M函数的帮助文件呢
回复

使用道具 举报

harder | 2021-2-19 03:32:31 | 显示全部楼层
老师,哪里有M函数的帮助文件呢


原来我用过的,现在不知怎么回事打不开页面了,总是显示错误!好几个月了
回复

使用道具 举报

ketone | 2021-2-19 03:35:31 | 显示全部楼层
关于m函数的资料哪里可以找到呀

这里有官方文档:
https://msdn.microsoft.com/library/mt253322
回复

使用道具 举报

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

本版积分规则