一、应用背景
工作中我们经常会对excel文件进行操作,比如获取表格数据后,需要在空白excel文件中先写入表头,在逐行写入数据。如果每次都需要在流程中进行表头的写入,流程会看起来很臃肿。此时,我们可以充分利用达观RPA中自定义控件来创建一个。后续涉及到写excel表数据,可直接将该自定义控件拖拉到流程编辑区,进行相应配置后即可使用,让流程更加简介可读。
二、知识准备
本文涉及到的自定义控件创建的知识可以参考达观RPA实战-自定义控件基础_hongdi的博客-优快云博客
三、达观RPA的实现
(一)创建自定义控件
1.创建一个可视化流程,然后在菜单栏中,依次打开“文件”--“自定义控件”,如下
2.在弹出的“控件中心”界面中,先新建一个“自定义控件库”,这里我们命名为lhl_control,双击该控件库,并创建名为“excel表头_无标题”的控件
3.双击创建的自定义控件,进入控件编辑
(1)控件的配置代码如下:
这里需要注意的是,因为控件中需要在某个exel文件中的某个工作表中写入表头,所以这里需要3个配置参数:
一是excel文件,把类型type配置成Excel
二是工作表,类型为String,默认是Sheet1
三是要写入的表头,这里我们通过列表来表格,默认是"[\"a\",\"b\",\"c\"]",类型是Any
具体配置如下
{
"fieldGroups": [
{
"title": "设置excel表头",
"fields": [
{
"name": "excel_file",
"value": "",
"type": "Excel",
"title": "EXCEL文件",
"element": "RpaInput",
"params": {
"placeholder": "请选择"
}
},
{
"name": "sheet_name",
"value": "Sheet1",
"type": "String",
"title": "Sheet表",
"required": true,
"element": "RpaInput"
},
{
"name": "table_header",
"value": "[\"a\",\"b\",\"c\"]",
"type": "Any",
"title": "表头",
"required": true,
"element": "RpaInput"
}
]
}
],
"return": ""
}
以上配置的预览如下:
4.在功能代码中实现主要的功能
主要是在excel文件中的工作表中写入表头,功能代码和生成的python代码如下
下图中,行1的代码通过import导入rpa.excel库,为后续的excel操作做准备
行6的代码是将配置的列表参数,即表头,写入到第一行
行7和行8的主要作用是,设置excel表格的第一行单元居中和字体加粗。
(二)在流程中引用自定义控件
1.查看自定义控件
创建一个可视化流程,在控件区的自定义控件中可以看到创建的自定义控件,如下:
2.使用自定义控件
先在流程编辑区中拖入一个“创建Excel文件”
在拖放一个刚刚创建的自定义控件“excel表头_无标题”控件
整个流程如下:
3.配置上面拖入的自定义控件,配置如下:
4.运行后的效果