

在影刀RPA中,想要设置单元格边框需要在Excel表内指出,略显麻烦,所以开发了一个自定义指令,用于设置单元格边框

指令界面

效果如图:

需要注意的是,运行该指令前,需先关闭Excel表格

搭建流程

配置输入参数

新建python模块,记得导入openpyxl包

代码如下:
import xbot
from xbot import print, sleep
from .import package
from .package import variables as glv
from openpyxl import Workbook,load_workbook
from openpyxl.styles import Border,Side
# 1. 实线类
# thin 细实线(默认值),单像素宽度的实线边框。
# medium 中等宽度的实线边框,比thin更粗。
# thick 粗实线,比medium更粗。
# hair 极细的实线,比thin更细,可能在某些渲染中显示为虚线。
# 2. 虚线类
# dashed 普通短虚线,线段长度中等。
# mediumDashed 中等宽度的短虚线,线条比dashed更粗。
# dotted 点状虚线,由小圆点组成。
# 3. 混合虚线类
# dashDot 交替的短虚线和单点(-.-.-)。
# mediumDashDot 中等宽度的dashDot样式,线条更粗。
# dashDotDot 交替的短虚线和双点(-..-..)。
# mediumDashDotDot 中等宽度的dashDotDot样式。
# slantDashDot 斜向的短虚线和点组合,呈现倾斜效果(较少使用)。
# 4. 特殊样式
# double 双实线,由两条细实线组成,中间有空白。
def styles(args):
# 1. 实线类
if args == '极细实线':
return 'hair'
elif args == '细实线':
return 'thin'
elif args == '中等实线':
return 'medium'
elif args == '粗实线':
return 'thick'
# 2. 虚线类
elif args == '普通短虚线':
return 'dashed'
elif args == '中等短虚线':
return 'mediumDashed'
elif args == '点状虚线':
return 'dotted'
# 3. 混合虚线类
elif args == '交替短虚线':
return 'dashDot'
elif args == '中等交替短虚线':
return 'mediumDashDot'
elif args == '交替短虚线和双点':
return 'dashDotDot'
elif args == '中等交替短虚线和双点':
return 'mediumDashDotDot'
elif args == '斜向短虚线和点组合':
return 'slantDashDot'
# 4. 特殊样式
elif args == '双实线':
return 'double'
# 基础颜色
# 黑色 00000000 ⬛
# 红色 00FF0000 🔴
# 橙色 00FFA500 🟠
# 黄色 00FFFF00 🟡
# 黄绿色 009ACD32 🟢
# 绿色 0000FF00 🟢
# 青色 0000FFFF 💠
# 天蓝色 001E90FF 🔵
# 蓝色 000000FF 🔵
# 深蓝色 00000080 🌌
# 紫色 00800080 🟣
def colors(args):
if args == '黑色':
return '00000000'
elif args == '深红色':
return '00C00000'
elif args == '红色':
return '00FF0000'
elif args == '橙色':
return '00FFA500'
elif args == '黄色':
return '00FFFF00'
elif args == '黄绿色':
return '009ACD32'
elif args == '绿色':
return '0000FF00'
elif args == '青色':
return '0000FFFF'
elif args == '天蓝色':
return '001E90FF'
elif args == '蓝色':
return '000000FF'
elif args == '深蓝色':
return '00000080'
elif args == '紫色':
return '00800080'
def excel(files,sheet,style,color,inrow,derow,incol,decol,tops,bottoms,lefts,rights):
wb = load_workbook(files)
ws = wb.active
if sheet != None:
ws = wb[sheet]
side = Side(style,color)
if tops == True:
top = side
else:
top = None
if bottoms == True:
bottom = side
else:
bottom = None
if lefts == True:
left = side
else:
left = None
if rights == True:
right = side
else:
right = None
border = Border(top, bottom, left, right)
if derow == -1:
derow = ws.max_row
if decol == -1:
decol = ws.max_column
for i in range(inrow,derow+1):
for j in range(incol,decol+1):
ws.cell(i,j).border = border
wb.save(files)主流程指令:

excel函数传参:

右键主流程,点击指令编辑

边框样式,边框颜色设置为下拉框,上下左右边框设置为复选框。

边框样式:
极细实线
细实线
中等实线
粗实线
普通短虚线
中等短虚线
点状虚线
交替短虚线
中等交替短虚线
交替短虚线和双点
中等交替短虚线和双点
斜向短虚线和点组合
边框颜色:
黑色
深红色
红色
橙色
黄色
黄绿色
绿色
青色
天蓝色
蓝色
深蓝色
紫色
保存发版,这样在搭建其他应用时就可以调用这个自定义指令啦

相关教程:
Python库 | openpyxl介绍,用代码操作Excel工作表