Excel之PowerQuery 修改指定行
网友提问


回答网友问题:
没有什么是最方便的方法,都是在不断的改进,不断的思考。
同样一个问题,如果有几个小时去思考 ,可能结果会更好一些。
我解决问题,大多是写文章的时间比思考找时间久,因为我的时间比较紧:)
1、导入数据

2、新建步骤
代码解读:
我们想替换某一行的值,方法可以用

指定行和替换行都是记录。
r1 = 更改的类型{1} // 这就是指定行的记录

知识点:

tb1=Record.ToTable(r1) // 把指定行的记录转成表

知识点:

tb2=Table.TransformColumns(tb1,{"Value",(x)=> if (x is number) then -x else x})
// 修改列,如果值是一个数字,就让他变成负数,否则返回那个值

知识点:


我之所以没有给大家讲 Value.Is函数,因为他可以使用另一种等价形式,我们讲了第二种方法
Value.Is(123, Number.Type) = (123 is number)
r2 = Record.FromTable(tb2) // 把tb2转成记录
知识点:

现在我们有了 指定行的记录,也有了替换行的记录,就可以直接应用我们一开始说的【替换指定行】Table.ReplaceMatchingRows 来完成最后的代码了。
会这一行的修改,就一定会多行的修改,就像打印一样,你会打印指定页(如第3页),就会打印1-3页,1、5、8页、奇数页、偶数页等。

PowerQuery教程:https://www.bilibili.com/video/BV1oa4y1j75e