01UiPath之如何在Excel中追加列

1400 0
2020-3-10 09:28:45
显示全部楼层
今天在群里看到有小伙伴问到,如何在表格中追加一列No,然后填充数字,今天就给大家介绍这活动的使用方法,干货东西继续给大家提供,希望能帮助大家。
下面是进入我们RPA之家的方式,希望大家积极入伙,并关注小U的订阅号。
---小U的QQ群(714733686)
---小U的订阅号【UiPath8888】
---RPA之家【www.rpazj.com】
本流程实现的结果如下图:
image001.png
                              
就是在【职位】前追加一列【No】,然后往里面添加序号。
今天流程中使用到的Activity有:
1.  ExcelApplicationScope
2.  Insert/DeleteColumn
3.  WriteCell
4.  ReadRange
5.  ForEachRow
流程如下
image002.png
本流程中难点:
1.  如何往DataTable中追加列?
2.  如何指定追加列的位置?
3.  如何写入序号NO?
流程实现的过程
第一步:在序列中拖入一个ExcelApplicationScope
第二步:拖动一个Insert/DeleteColumn 如下图
image003.png
属性:
image004.png
第三步:使用WriteCell来写入我们需要追加的列名,比如这里的列名为No
image005.png
第四步:使用ReadRange来读取追加了列的Excel,这样输出的DataTable就会包含我们新追加的列,如下:
image006.png
第五步:使用ForEachRow来实现写入序号,那么问题来了,我们怎么知道当前行的行号呢?
知识点:用indexof即可返回当前行的行数。如下:
DTinfor.Rows.IndexOf(row)
image007.png
在这里大家可以会有一个疑问,为什么要在row的后面+2呢?
大家要知道,我们在Excel中追加了一个NO的列名,那它的单元格是A1,还有我们的DataTable中的下标是从0开始的,怎么才能把序号写到A2这个单元格呢?
DTinfor.Rows.IndexOf(row),第一次循环返回的值为0
所以要在后面+2,变成:
(DTinfor.Rows.IndexOf(row)+2).ToString
单元格我们怎么控制呢?很简单,如下:
“A”+(DTinfor.Rows.IndexOf(row)+2).ToString
好了,这样就完成了我们这篇文章中提到的,往表格中追加一列,然后写入对应的序号了。
如果大家还有什么其他的情况,可以通过文章的开始部分,加入我们的QQ群,或则进入RPA之家,我在看到信息后第一时间回复给大家。