在对数据的加工处理过程中,经常使用到以下功能:
1. 获取表格中符合条件的行写入新表/循环录入系统
2. 获取表格中某一列或某几列写入新表/循环录入系统
关于Data table,已经写过如何对Data table内的数据加总或进行简单筛选,感兴趣的同学可以进入公众号点击搜索,今天主要解决以下3个问题:
1. 新增Data table
2. 向新增Data table中写入内容
3. 筛选固定条件行/某几列的方法
首先来看Data table的来源:
如果已有表格,那么使用read range读取为Data table即可。
没有表格,如果需要新增一个新的Data table,可以使用build data table,并自己添加标题。
如果不想要一个一个输入标题,也可以使用assign,利用data table.clone复制已有data table的标题行。
新建立了一个data table,如何写入数据呢?
最常用的就是For each row了,如果需要增加筛选条件,在For each row中嵌套if就可以解决问题,如下:
这里补充一个知识点,在for each row中使用row(“Name”)是可以获取到Name这一列中每一个单元格的值。
还有一种写入方法比较直接,也相对简单,是使用CopyToDataTable的方法,如下:
这里是可以写入多重筛选条件的,使用到的同学们记得条件结构要写对哦:
DT.Select(“列名 = ‘筛选条件’ and 列名 = ‘条件2’”).CopyToDataTable
当然除此之外也可以参考历史文章中的Filter Datatable。
以上都是介绍的如何筛选符合条件的行,但某些情况下,并不需要写入原表中的所有列,只取需要的某几列,如何实现呢?
尝试过很多种方法,比如add data column或add data row,但是都会提示类似“already belongs to this DataTable”或“already belongs to another DataTable”的错误。最终发现了一个很简洁的方法,如下:
这样可以只选择原data table中某几列写入新的data table,还可以定义不写入重复值,更多功能大家在使用时慢慢摸索呀。
网友评论