1.实战目标
使用Excel制作工资条是一种常见的做法,每个公司几乎都有这样的需求,我们先介绍下使用excel手动制作工资条的方法,看看不足之处,使用影刀RPA又会给我们带来怎样的便利,让我们更倾向于选择影刀来处理。
工资表:
工资条:
1.1 工资条制作方法
- 排序方法:主要是通过输入连续数字,结合空值定位及排序功能,来实现表格隔行拆分。
- 函数方法:通过使用复杂的函数,综合提取数据,复制数据,达到表格隔行拆分。
- VBA自动化:相对于前两种方法,能通过代码编写实现数据自动归类,唯一就是需要花费时间去研究编程语言。
不足之处:
- 手动操作繁琐:如果员工数量较多,复制标题行和插入空行会变得非常繁琐
- 容易出错:手动操作时容易出错,比如复制错误、公式或数据输入错误
- 数据保护问题:如果工资条生成在一张表里,我们只需要设置一次保护密码,如果每个员工生成一个表格去确认,那我们需要为每个表格设置密码保护
1.2 影刀RPA制作的优势
影刀提供了简单直观的操作界面,即使是没有编程背景的用户也能快速上手,通过拖拽等简单操作实现自动化流程,简单易用。
影刀可以自动执行Excel中的各种操作,如数据的读取、写入、复制、粘贴、删除等,极大提高工作效率,自动化强
对于需要自动化重复任务的场景,影刀可以替代VBA宏,避免了编写代码的复杂性,同时提供了更直观的流程设计
相比于雇佣人工或使用其他昂贵的自动化解决方案,影刀提供了一个成本效益高的选择。通常情况下,使用影刀免费版本就能实现我们的需求,不需要付费购买。
自动化流程减少了人为错误的可能性,提高了数据处理的准确性。
影刀可以将用户从重复性工作中解放出来,让他们有更多的时间专注于更有创造性和战略性的任务。
综上所属,我们完全可以使用影刀RPA来制作工资条,解放双手,摸鱼遛狗!
2.实战代码
2.1 流程框架
编写代码前我们先把大致的操作流程制定出来,包含需要调用的子流程,报错机制。
子流程中我们不进行错误捕获,所有的异常都暴露给主流程,由他通过飞书,钉钉等软件发送报警通知。我们再依据错误日志做代码更新或容错处理。
将整个的操作流程划分成不同的子流程,这样的最大的好处是可以分而治之,编写与调试都在这个流程中,其他子流程不会受到影响,降低耦合度,无论是编写还是更新调试,我们都把范围缩小了,仅在一个功能模块进行,无需跑完整个流程。节省了时间。
2.2 计算工资
- 方法1:向下填充公式
这个指令在之前已经介绍过,现在我们就可以用它计算工资了。
输入计算公式,行号会自动递增,依次计算每行中工资实发数据
演示:
- 方法2:循环计算
通过循环excel数据内容并写入的指令也可以实现,相比较第一种,有点繁琐。这种方法行号不会自动递增,需要我们手动设置
具体设置
演示:
数据量小的情形下,我们看不出性能上的优势,但是秉着越少越好得原则,我们会毫不犹豫的选择第一种方法。
2.3 工资条
制作流程:
- 首先,获取工资表中的销售人员,打包成一个列表
- 循环销售人员列表,并对其进行筛选
- 将筛选出的数据复制粘贴到工资条数据表中
- 设置工资条表的隔行数量
影刀代码:
获取销售人员列表
循环筛选
设置隔行
复制黏贴数据到工资条表中
整体代码:
演示:
3.难点解析
在之前的博文中,已经介绍了影刀RPA操作的Excel的大多数难点指令,剩下的指令基本上都很好理解,功能设置比较单一,看下使用说明就能上手操作。这里说下对影刀RPA指令的一些使用心得
首先,我们在手动操作Excel的时候,一个需求往往有多种解决的方法,我们只需要掌握一种就可以了,影刀也是一样,比如我们今天讨论到的公式填充,还有读取总行数,它还有一个指令获取第一个可用行,都能达到今天的需求。这个就看我们的选择了。喜欢那个用哪个,那个顺手就用那个
其次,影刀操作Excel数据时,打开或新建指令,都会有个关闭指令,他们成对出现,在调试过程中,建议你把关闭指令禁用。调试好了再开启,为什么呢?因为影刀RPA在操作数据的时候不能撤销,一旦操作失误,同时表格也关闭了,那数据就无法更改了。对于这种情况,最好是操作前备份数据,也可以关闭指令禁用,出错了就关闭表格不保存修改,打开接着用。
有些代码指令操作不要隔行,比如我们手动复制excel数据是不是马上就粘贴,中间插入其他操作数据就丢了,影刀RPA也一样,成对操作的指令先后使用,中间不要写其他代码,否则就可能会出现没有数据报错。
使用获取当前激活的excel对象,这个指令,建议你每次只打开一个excel,多个的话,如果激活的不是当前要操作的,那就整个流程就错了,要改的数据没改,不改的反而变了。
4.思维扩展
4.1 工资条拆分成多个Excel表格
依据工资表把每个销售人员的工资条制作成一张独立的表,这个过程中可以对工作表增加密码保护。如果需要打印,可以使用影刀RPA来循环文件夹下的所有工资条数据表,批量打印。
这里仅演示批量生成工资条数据表
代码:
演示:
4.2 使用区域截图,保存成图片
这个功能实在我们演示的案例基础上,将生成的工资条数据表,依据销售人员进行区域截图,保存到一个文件夹中,这样就能已图片的形式发给员工,操作完后可以将其销毁。
变成图片:
代码:
关键点在于怎么定位每个销售人员的截图区域。我们知道每个销售人员的隔行数量就好做了,每次循环都加上隔行数量,就是截图开始行号,那么开始行号加1就是结束行号,这样就确定了截图区域。
演示:
4.3 工资条发送确认
制作完毕后,就需要把工资条发到每个员工手中,传统的我们是将其打印,裁剪,通知员工领取,现在,我们多是在微信,钉钉,飞书等协同软件上发送给员工,有的软件功能比较强大,自带工资条功能。给工作带来极大的便利。
这些通讯协作的软件操作发送流程基本一致,所不同就元素定位获取。这里总结下一般流程,大家自己实现。
- 打开销售人员工资数据表,确认数据准确无误
- 循环工资数据表中销售人员,获取姓名
- 打开工资条数据表,定位其截图位置并截图
- 打开飞书等软件,搜索员工姓名
- 定位消息发送框,发生图片,如果生成的文件就发生文件
5.最后
感谢大家,请大家多多支持!