影刀RPA实战:制作Excel工资条

news2024/11/25 13:30:18

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.最后

感谢大家,请大家多多支持!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2202278.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

世昌股份与吉利亲密关系:资产负债率远高同行,应收账款周转率偏弱

《港湾商业观察》杨丹妮 9月23日,河北世昌汽车部件股份有限公司(以下简称“世昌股份”)回复了第一轮审核问询函,公司于今年六月递表北交所,保荐机构为东北证券。 近几年新能源汽车如日中天,世昌股份也因此…

系统端口号被占用问题处理(WindowsLinux系统)

Windows 直接kill占用端口的进程 WinR 输入cmd 打开命令行窗口 1.查询本地已被占用的端口号: 下面以8080端口为例: netstat -aon|findstr "8080" 查看本地8080端口进程的PID 2.杀死"xxxx"端口号的进程 (下面的22868是 你查到…

DAY5 数组

概念 数组是一个数据容器,可用来存储一批同类型的数据。 存储原理 int[] arr new int[]{12,24,36}; 理解为数组对象中存储的为地址信息 一维数组 静态数组 数据类型[] 数组名 new 数据类型[]{元素1,元素2,......}; 数据类型[] 数组名 {元素1,元…

惯导+卫导组合高精度模块UM981系列新品特点

近日,和芯星通发布了UM981系列全系统全频高精度RTK/INS组合定位模块,可同时跟踪 BDS B1I/B2I/B3I/B1C/B2a/B2b,GPS L1/L2/L5,GLONASS G1/G2/G3,Galileo E1/E5a/E5b/E6,QZSS L1/L2/L5,NavIC L5&a…

Extreme Compression of Large Language Models via Additive Quantization阅读

文章目录 Abstract1. Introduction2. Background & Related Work2.1. LLM量化2.2. 最近邻搜索的量化 3.AQLM:Additive Quantization for LLMs3.1. 概述3.1.0 补充**步骤说明****举例说明** 3.2. 阶段1:代码的波束搜索3.3. 阶段2:码本更新3.4. 阶段3&…

Java中对象的比较(equals、Comparable、Comparator)

文章目录 一、PriorityQueue中插入对象二、元素的比较 2.1、基本类型的比较2.2、对象比较的问题三、对象的比较 3.1、覆写基类的equals3.2、基于Comparable接口类的比较3.3、基于比较器比较3.4、三种方式对比 一、PriorityQueue中插入对象 前篇我们讲解了优先级队列&#xff0…

mpi 示例小程序集锦

1,小ring 程序 数据从rank 0开始向外传递,rank1收到后再传递给 rank2,以此类推 除了rank0,程序一开始时,每个rank先进入接收等待状态,像是多米诺骨牌,都立起来。 rank 0开始倒下,依…

设备管理系统:强化特种设备安全监管的智能引擎

设备管理系统在特种设备安全监管中发挥着至关重要的作用,主要体现在以下几个方面: 一、实时监控与预警 运行状态监控:设备管理系统能够实时监控特种设备的运行状态,包括开机时间、运行时间、停机时间等关键参数。这有助于及时发现…

初级网络工程师之从入门到入狱(六)

本文是我在学习过程中记录学习的点点滴滴,目的是为了学完之后巩固一下顺便也和大家分享一下,日后忘记了也可以方便快速的复习。 网络工程师从入门到入狱 前言一、vlan与vlanif二、路由器之三层通信方式2.1、路由器物理接口2.2、子接口2.3、vlanif 三、数…

Tars简介

定义:Tars协议的高性能rpc开发框架 功能:可扩展协议编解码、高性能rpc通信框架、名字路由和发现、发布监控、日志统计、配置管理 整体架构 交互流程 1.服务发布 2.管理命令 3.心跳上报 4.信息上报 server服务运行后,会定期上报统计信息到s…

高中毕业|转行AI产品经理经验都在这了

从高中毕业以后第一份客服工作➡️设计师➡️产品➡️AI产品,从月薪4k到年薪22w,我觉得在转行这方面我太有发言权了,所以今天为大家整理我的转行经验,希望能帮助到大家! 找工作,大家胆子一定要大&#xff0…

10月10日微语报,星期四,农历九月初八

10月10日微语报,星期四,农历九月初八,工作愉快,生活喜乐! 一份微语报,众览天下事! 1、从严处置!网信部门曝光“毒视频”“开盒挂人”等涉未成年人乱象。 2、A股新纪录诞生&#x…

Windows 下纯手工打造 QT 开发环境

用过 QtCreator 和 VS QT 插件,都觉得不是很理想。所以有了这个想法。 手工打造的 QT 的开发环境,是不需要安装上面两个程序的。 1、下载 vcpkg,编译 QT6 下载地址:https://github.com/microsoft/vcpkg.git 进入到 …

mac本地VSCode配置LeetCode

1、安装node.js及环境配置 https://www.jb51.net/article/283302.htm mac配置后如何找到Node地址 打开终端,输入which node 2、安装leetcode插件 https://zhuanlan.zhihu.com/p/488602193 3、mac配置力扣插件 https://juejin.cn/post/7050349897756704805 4、登…

前瞻性的索引设计

目录 介绍两个快速、易用的技术:基本问题法(BQ)和快速上限估算法(QUBE) 发现不合适的索引 基本问题法 对每个SELECT语句,以下问题的答案都必须按下述步骤来考虑 如何确定一个方案能否让SELECT在最差输…

PostgreSQL 专栏已全部完成

PostgreSQL 专栏历时近半年,终于完成了。 目前已整理成册,可以看下截图: 目录预览 目录 01 预览: 目录 02 预览: 目录 03 预览: 目录 04 预览: 目录 05 预览: 目录 06 预览&…

罗格科技:全球税务服务领域初露锋芒 罗格罗拉国际税大模型发布

近年来,随着全球数字经济和跨境电商的迅猛发展,税务问题已成为中国企业出海过程中不可忽视的重要环节。为了帮助企业应对国际税务挑战,国内领先的数据科学与税务科技服务供应商罗格科技,携其最新成果——罗格罗拉国际税大模型&…

[内容转载] 微信全平台开源终端数据库WCDB迎来重大升级!

第一次看到这么详实的文章,转给大家看看,很多提出问题和如何解决问题的方法因为太细了,就没有完全转载,感兴趣的可以去看原文。 一、简介 WCDB 是微信团队开源的一款基于 SQLite 的终端数据库。自 2017 年 6 月开源以来&#xff…

【C++】STL——stack和queue

目录 前言容器配接器(适配器)stack的使用stack的模拟实现queue的使用queue的模拟实现双端队列(deque) 前言 前面我们已经学习了STL容器中的string、vector还有list。 【C】string的模拟实现 【C】STL——vector的模拟实现 【C】S…

gradle降级

文章目录 引子编译错误参考 引子 项目引入了一个高版本项目改造,编译运行失败,提示如下错误,解决方案要么升级gradle版本,升级适配改各种方法配置,现有的项目存在适配问题;要么就是版本降级。 本文以介绍…