UiPath之ForEach循环

发布于: 雪球转发:0回复:0喜欢:0

本次讲解的案例:通过两种方式输出日期类型的数据。就是将下面表格中F列的数据输出。

注意:本案例这里使用是WorkBook里面的活动,在使用WorkBook活动时,要去读取的Excel文件不能是打开的状态,否则会出现以下错误


下面看看整流程的实现过程,如下图


我们需要读取的Excel表格如下图:


------------第一种方式---------------------------

1. 拖动一个ReadColumn活动到设计区,我们需要读取F列的数据,因为不需要表头,所以单元格是从F2开始。


属性的设定:


在Output中,我们新建一个变量用来存储读取出来的数据,类型为


2. 拖动一个ForEach活动,如下图


将参数TypeArgument类型修改为如下图


3. 使用logmessage来打印信息


item.GetType.Name.ToString:获取item对象的类型

item.ToString("yyyy-MM-dd"):将日期格式化输出为2019-11-20

最后,我们看看输出结果,如下图:


----------------第二种方式---------------------------

1. 拖动一个ForEach,


注意:此时TypeArgument:类型为Object


如果我们还是使用第一种方式打印会出现如下错误:

“不允许从String到Interger的隐式转换”


为了解决上面的问题,我们需要进行以下的步骤:

1.1 item本身的类型是Object类型,不能直接用item.ToString("yyyy-MM-dd")来输出

1.2需要使用DateTime.Parse()来将item.ToString转换成DateTime

1.3.为什么不直接将item转换成DateTime,而要用item.ToString呢?因为DateTime.Parse()需要的参数必须是字符串。

2.使用LogMessage来打印我们的数据,如下图


item.GetType.Name.ToString+":"+datetime.Parse (item.ToString).ToString("yyyy-MM-dd")

最后我们看看两次执行的结果是一样的。

文章来源:http://www.rpazj.com
作者:RPA之家