![a15ffaceb05546a407ffe2d3cecb2fb4.png](https://i-blog.csdnimg.cn/blog_migrate/8f76684f5766c523ea60f5c2741968ac.jpeg)
1. 按错误的信息提取
Table.SelectRowsWithErrors(tableas table,optional columns as nullable list)as table
第1参数为需要操作的表;第2参数为是否指定列查找,是一个列表格式,默认是不指定列;返回的结果是表格式。
例:
我们先自定义一列是错误信息。
![e00fb4f5b5fa883ba5193735fde2e0c3.png](https://i-blog.csdnimg.cn/blog_migrate/eb3b5f78baab1de2b75ff3708bfe557b.jpeg)
Table.SelectRowsWithErrors(源)=
![d9d981b2901e2a2241fadcde591d1e40.png](https://i-blog.csdnimg.cn/blog_migrate/da3b4c76c421c52d8386930b26209046.jpeg)
解释:因为这3行都有错误,所以筛选错误后都进行了返回。
Table.SelectRowsWithErrors(源,{"学科"})=
![870ee37c869c32e4b4d1b87bff8a413d.png](https://i-blog.csdnimg.cn/blog_migrate/3ea608ea249a7bcf092c365cc2b3d654.png)
解释:因为第2参数指定了需要查找的学科这列,这列里面没有错误的行,所以返回的是一个空表,此外需要注意的是,虽然只指定一个列表字段,但是其格式是列表,所以需要用{}表示。
2. 按表格偏移提取
Table.Range(table as table,offset as number,optional counts as nullable number)as table
第1参数为需要操作的表;第2参数是需要偏移的行,从0开始,不偏移为0,是数字格式;第3参数是需要返回的行数,是数字格式,默认是返回偏移后的全部行;返回的也是表格格式。
例:
Table.Range(源,0,2)=
![85c0af7aa523628660900aa79de005f0.png](https://i-blog.csdnimg.cn/blog_migrate/8a19d6e74f0be639e48df54b0caa905d.jpeg)
Table.Range(源,1)=
![764c8ab0d33dcaaca4c3e9420d29194a.png](https://i-blog.csdnimg.cn/blog_migrate/8ae28e4ebd9d30489a6254675b8a16b2.jpeg)
Table.Range(源,2,10)=
![55af989530daacfb7afc987656b0e75b.png](https://i-blog.csdnimg.cn/blog_migrate/5c35de029a30c194a6edcf430e96167d.jpeg)
解释:偏移2行往后取10行,此函数不存在参数超标的情况,所以如果取的行数超过了表格的行数,则取全部返回。
3. 按文本匹配后提取
Table.FindText(table as table,text as text)as table
第1参数是需要操作的表;第2参数为需要查找的文本;返回的也是一个表格式。
例:
Table.FindText(源,"数")=
![f9742c348ea3b50d359e1ef2e8026cc9.png](https://i-blog.csdnimg.cn/blog_migrate/1207d9901f15aef3c104b99ae327583d.jpeg)
解释:返回姓名,成绩,学科字段所有含"数"的行。因为此数据源相对简单,所以返回了学科中数学包含"数",所以返回这一行。
Table.FindText(Table.TransformColumnTypes(源,{"成绩