1、UiPath 原生去重组件
1.1 表格信息如下:
姓名 | 年龄 | 班级 |
小红 | 19 | 二 |
小张 | 20 | 二 |
小王 | 19 | 二 |
小李 | 18 | 二 |
小明 | 18 | 四 |
小张 | 21 | 二 |
小王 | 20 | 四 |
小红 | 19 | 二 |
小李 | 19 | 四 |
1.2 Remove Duplicate Rows
在使用 Remove Duplicate Rows组件之前需要先读取Excel文件,读取range信息,并将该数据表作为输入填写至remove duplicate rows的Input DataTable中,再填写去重后输出的结果数据表至Output DataTable(这里将源数据表变量覆盖)之后可通过write range将其结果数据表写入Excel中
1.3 表格去重结果
因为remove duplicate rows组件并没有设置去重的列,则默认按照以所有列作为条件去判断去重,最终的结果如下:
姓名 | 年龄 | 班级 |
小红 | 19 | 二 |
小张 | 20 | 二 |
小王 | 19 | 二 |
小李 | 18 | 二 |
小明 | 18 | 四 |
小张 | 21 | 二 |
小王 | 20 | 四 |
小李 | 19 | 四 |
这里只是去重姓名为小红的数据,因为两条关于小红的信息是完全一致的(姓名、年龄、班级都相同)
2、使用BalaReva的Excel活动包
2.1 Remove Duplicates组件
提前先下载BalaReva的Excel.Activities活动包,表格内容依然使用1.1中的信息,相比UIpath原生的去重组件,该组件可以对单独某一列或某几列进行去重,如下图:
File Path : 填写Excel文件的绝对路径(注意:相对路径会报错)
Sheet Name: 需要操作的Excel文件的sheet名称
Cell Range:需要操作的单元格范围,格式如“A1:C12”
Columns : 需要操作去重的列索引,从1开始,格式如{1},若条件为多列则{1,2}
注意:这里不同于UIpath原生去重组件的是,该组件去重操作是在原表的基础上进行操作
2.2 表格去重结果
该结果为column填写的{1}后的结果,主要这里读取的sheet3数据表,运行完成后,sheet3的数据表结果如下(不会保留原数据的)
姓名 | 年龄 | 班级 |
小红 | 19 | 二 |
小张 | 20 | 二 |
小王 | 19 | 二 |
小李 | 18 | 二 |
小明 | 18 | 四 |
若column填写的是{1,2},则结果如下:
姓名 | 年龄 | 班级 |
小红 | 19 | 二 |
小张 | 20 | 二 |
小王 | 19 | 二 |
小李 | 18 | 二 |
小明 | 18 | 四 |
小张 | 21 | 二 |
小王 | 20 | 四 |
小李 | 19 | 四 |