Uipath调用VBA脚本,处理excel文档格式

在平时我们的工作中,经常需要使用Uipath自动的导入大量数据到Excel表格中,但是却发现,数据导入到Excel之后,格式却是很乱,基本不能看,就像下图:
Uipath调用VBA脚本,处理excel文档格式

 


而Uipath对Excel的操作非常有限,特别是涉及到调整格式之类操作。今天我就教大家,怎么样通过Uipath调用Excel的VBA脚本实现对Excel表格内数据的美化。也许有不少朋友不知道VBA是什么或者不会写VBA的脚本,这个没关系,今天的文章基本不涉及写VBA脚本,99.9%的工作是通过录制宏来完成的。

需求:

    在表头增加一行,并合并单元格,表头内容是“2009.12月支出欠付表”,字体设置为16号黑体;
    把标题行固定,字体设置为12号黑体;
    表单中的数据都能够完整显示;
    支出欠付总额、收入重量、收入体积进行合计小结;
    所有的数值,显示两位小数等等一系列的操作。

期望的结果如下:
Uipath调用VBA脚本,处理excel文档格式

 


具体操作步骤:

    打开有问题的Excel,如图:
Uipath调用VBA脚本,处理excel文档格式

 


    找到开发工具(若是没有,后面说怎么让他显示出来)
Uipath调用VBA脚本,处理excel文档格式

 


    在第二步点确定后,就按照自己的操作把需求中的项完成,最终形成的结果如下:

    停止录制宏,然后进入到编辑环境:
Uipath调用VBA脚本,处理excel文档格式

 

 


    把录制的宏修改成函数,增加一个参数,表示对那个工作簿进行操作。开头如图:
Uipath调用VBA脚本,处理excel文档格式

 

 


结尾把“End Sub”修改成“End Function”,

 

    写个宏,调用测试一下
Uipath调用VBA脚本,处理excel文档格式

 

 


 

    测试运行的结果是OK的,和我们用手工操作是一样的。
    把测试宏删除,然后,把代码导出,保存为FormatCell.bas。
Uipath调用VBA脚本,处理excel文档格式

 

 

Uipath调用VBA脚本,处理excel文档格式

 

 


 

以上是录制宏,下面是建立Uipath工程。

 

    打开Uipath,并新建流程ExcelFomat。
Uipath调用VBA脚本,处理excel文档格式

 

 


    拖入一个 “Excel 应用程序范围”的活动:
Uipath调用VBA脚本,处理excel文档格式

 

 


设置操作的文件,其它不用的参数可以不用设置。

    在“正在处理”中找到“调用应用程序视觉化 Basic”活动,
Uipath调用VBA脚本,处理excel文档格式

 

 


    设置需要运行的脚本,即刚才我们保存的“FormatCell.txt”文件。方法名称就是“FormatCell”,参数用是工作簿的名称,此处是“Sheet1”,设置后的参数如下所示:

    执行此流程,也可以看到和手工一样的结果。
Uipath调用VBA脚本,处理excel文档格式

 

 


在本示例的过程中,我们只是对操作的一种情况做了介绍,其它的还有不少方面,在这里没有涉及,比如excel行数,字体设置大小等等。本文也只作抛砖引玉,给大家一个引子。

 

其它设置:

    调出开发工具
        在文件à选项,弹出Excel选项界面:
Uipath调用VBA脚本,处理excel文档格式

 

 


        按图中,勾选“开发工具”即可

 Uipath调用VBA脚本,处理excel文档格式

 

 



    宏设置
Uipath调用VBA脚本,处理excel文档格式

 

 


若是不进行宏设置,用uipath调用excel的vba是调用不成功的。会弹出如下的错误:

因此要进行宏的设置,另外因为excel有比较高的风险威胁,所以在不使用时要把它关闭了。

        在文件à选项,弹出Excel选项界面,然后按图中步骤操作:

        在弹出的“信任中心”界面中,左侧选择“宏设置”选项卡,最初的情况应该如下图所示:

        按下图选择“启用所有宏”和“信任对VBA工程对象模型的访问”

        最后点关闭即可。再次重审,这两个选项有风险,大家使用后,一定要记得关了。
    在调用过程中,若是出现如下错误,则表示函数已经存在,把原来的函数改个名或者删除即可。

 
————————————————
版权声明:本文为CSDN博主「binjuny」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/binjuny/article/details/104898811

上一篇:Excel VBA宏


下一篇:2021-09-24 windows之VBA基础知识