Uipath 对Excel中重复的行进行筛选解决方案以及DefaultVaule方法的使用

对数据的筛选使用“Filter Data Table”这个活动可以对每一行或者每一列的值进行筛选。但是好像做不到对重复的列进行筛选。

一开始博主想通过“For Each”来遍历循环,判断新建的表中是否存在这一行数据,存在丢掉,不存在丢弃。但是觉得这种方法太“笨”了,所以想在互联网上找一下解决方法,但似乎没有找到一种简短有效的方法:vba以及Linq(这两种方法博主都已经试过了,应该是可行的,只不过过程中出现错误没有继续进行下去,有定力的小伙伴可以去试一下,等我有时间了我也会试的,成功的小伙伴可以交流一下经验! T T)

然后就去爬*去外面找了一下,发现了一个DataTable一个很棒的方法DefaultVaule,可以筛选Excel中的重复行,下面博主通过一个实例给大家演示一下:

例表长这个样子

Uipath 对Excel中重复的行进行筛选解决方案以及DefaultVaule方法的使用

1.首先通过“Read Range”获取需要读取的Excel,并建立数据类型为“DataTable”类型的变量,在属性勾选“AddHeaders”

Uipath 对Excel中重复的行进行筛选解决方案以及DefaultVaule方法的使用

 

2.新建类型为“DataTable”输出变量“DT”,将 步骤1 输出的变量,通过使用“Assign”对新建的变量使用DefaultValue方法进行赋值。表达式为【DT=DT_DataSource.DefaultView.ToTable(True,"姓名")】:【True】表示对重复的值进行筛选,【“姓名”】表示筛选列的列名。来完成对“姓名”列的重复值筛选

Uipath 对Excel中重复的行进行筛选解决方案以及DefaultVaule方法的使用

3.将筛选后的数据“DT”通过“Write Range”写入到新的表中

Uipath 对Excel中重复的行进行筛选解决方案以及DefaultVaule方法的使用

 

运行一下,看下最后的结果:

Uipath 对Excel中重复的行进行筛选解决方案以及DefaultVaule方法的使用

 

但是此种方法只能筛选单列,不能将此行其他列的结果筛选过去,如下两图,如果有需要的同学可以自行尝试解决一下这个问题。

Uipath 对Excel中重复的行进行筛选解决方案以及DefaultVaule方法的使用

 

Uipath 对Excel中重复的行进行筛选解决方案以及DefaultVaule方法的使用

 

 

上一篇:机房重构- 登录窗体


下一篇:最新版Charles破解方法(Mac+Windows).md