【Uipath杂谈】用Datatable处理数据(二)

在上一篇博客中,我花费了很大的力气去提取一个excel表中的数据,可能很多人不明白我为什么要做这件事

 

上次的实践结果:

【Uipath杂谈】用Datatable处理数据(二)

【Uipath杂谈】用Datatable处理数据(二)

 

但其实这只是第一步,最终我是需要根据这个数据得到下面的结果

【Uipath杂谈】用Datatable处理数据(二)

 

Uipath绝对不是简单的提取数据,而是能根据所提供的数据,进行计算,最终得到你想要的结果,从而减少人力使用,让机器自己去实现

 

具体实现:

【Uipath杂谈】用Datatable处理数据(二)

关于提取DateTable中数据的内容,前一篇博客已经写的很清楚了,如果不明白可以去翻阅一下。

 

这篇博客主要是对于数据内容的处理以及输出。

因此整个流程,多了Build Data Table和Write Range两个流程,其作用是创建输出表和写到excel表里。

 

一、读取数据(Read Range)

【Uipath杂谈】用Datatable处理数据(二)

这次读取数据要从头读取,因为我需要其他列的信息,同时需要添加表头,方便查找

 

二、Bulid Data Table

【Uipath杂谈】用Datatable处理数据(二)

设置了输出表的格式,其中包括我想要知道的信息。

为什么年龄和成绩是double格式,是因为从表一提起的数据就是这个格式,因此没有改变

 

三、数据处理(While)

从输出表想要拿到的信息分析,日期、姓名、年龄和成绩都属于同一行的内容,而评价是对于成绩的判断

最特殊的就是科目,因为它属于成绩所在列的内容,因此需要最先判断

【Uipath杂谈】用Datatable处理数据(二)

其中判断使用了.net中的column函数,从而提取想要的这一列的表头的信息

而int_Count就是计数器,用来对列进行判断。

 

(2)对于行的处理

【Uipath杂谈】用Datatable处理数据(二)

【Uipath杂谈】用Datatable处理数据(二)

 

前面没有变,还是先将成绩提取出来

用if去对评价进行处理

【Uipath杂谈】用Datatable处理数据(二)

 

因为for each row就是提取了这一行,因此我们想要得到的其他信息比如日期,同样用get row item直接实现就好

【Uipath杂谈】用Datatable处理数据(二)

这就是为什么要添加表头,因为可以根据表头直接就找到信息

 

【Uipath杂谈】用Datatable处理数据(二)

设置完全部信息后,用add data Row按照格式输出就好

这样就实现了全部功能。

总结:使用Uipath提供的dataTable相关函数,对于表单的处理就能很容易就实现了

 

 

备注:如何使用DATATABLE相关功能,其实是属于插件,刚装Uipath可能没有

【Uipath杂谈】用Datatable处理数据(二)

按照步骤去插件里找下载就可以使用了。