一、缘起
最近维护了一个流程:由于计算机变慢,以前正常的流程,需要增加一些delay,才能正常运行。
以前Write Cell可以顺利执行,现在得加不少delay,导致流程慢了很多。
慢,也有其他原因,本来可以用Write Range的,写成了多个Write Cell,于是,为了提高速度,将要写入的多行数据,先写入一个DataTable,再用Write Range一次性写入。
二、实现
为了实现数据写入表格,先定义一个跟Excel写入区域对应(列数相同)的表格,然后使用名为Add Row(添加数据行)的活动,逐行写入数据,所以,实现过程的重点是Add Row的用法。
添加数据行
Add Row(添加数据行)的功能:给DataTable增加一行数据。
可以通过2个入口(选择其一)给Add Row提供值,其中一个是数组,需要写成类似“{"列1数据","列2数据","列3数据"}”的格式,有多少列,就用多少个"把数据引起来,然后逗号分开,最后用大括号括起来。
添加数据行-属性
三、总结
- 尽量减少写入Excel文件的交互次数,以提高流程运行效率;
- 减少交互的方法:能用Write Range的尽量用Write Range,尽量不用Write Cell(除非就写1个单元格)。
如果对RPA感兴趣,可以参考《RPA(流程自动化机器人)入门――手把手教你应用UiPath自动化工作》一书。