需求:在实际需求中,经常会对Excel表进行操作,如在指定Sheet后新增一个Sheet,表格的列宽设置等等
解决方案:本例使用Invoke VBA ,来满足上述需求(当然也可以使用powershell,python)
模拟环境:一张AddNewSheet.xlsx的表,此表中有听、说、读、写四个Sheet(Sheet的顺序是随机的)

需要在①Sheet(“听”)后插入一个名为“中期总结”的Sheet,并拷贝Sheet(“听”)中A:B列数据至Sheet(“中期总结”);
②在最后一个Sheet后插入一个名为“完成结业”的Sheet,并拷贝Sheet(“写”)中B:C列的数据至Sheet(“完成结业”)中;
③将所有Sheet中的单元格按内容进行自动调整列宽。
操作步骤:
(1)新建文本文件,命名为AddSheets.txt,写入VBA代码,代码如下:
注意:如果VBA中有中文时,将文本文件以ANSI文件编码格式保存,防止乱码报错。

(2)Uipath调用VBA,
InvokeVBA需要在Excel Application Cope中调用,EntryMethodName填写VBA Sub或Function名


(3)运行验证

总结:对于Excel表的数据操作可以使用多种方式进行操作,VBA是一种解决思路。
网友评论