Excel文档间的数据替换 ---电脑版APP 自动操作魔法师

http://www.won-soft.com/macro/solution/excel-data-replace.htm

介绍:

在我们的日常工作中, 可能经常需要使用同各种数据表格打交道.比如财务工作中各种数据表格, 生产管理上的各种生产数据统计表,以前人力资源部的工资表等等。在处理这些数据的过程中, 我们可能经常会遇到要做一张表,但这张表的数据需要从另一张表上取,每个数据间有一些相关联的规则,举例来说: 年底一般都会做工资统计表,列出所有员工的全年的各种奖金总计、全年应发工资、实发工资、扣款等等项目。这些数据 可能分散在几张表中, 每张表上都有员工的姓名和银行帐号,我们需要根据员工姓名或是银行帐号从各表上取数字, 然后填在统计表。一般我们都是通过在表间查找,然后使用复制/粘贴的方法来完成这类数据替换,如果数据一多,这个 工作的强度是可想而知的。这里我们来看看自动操作魔法师能不能帮我们减化甚至代替我们完成这种数据替换工作。

分析:

我们先来梳理一下表格间数据替换的基本步骤,这里我们假设有两张表,A和B,A表里面有人员姓名、银行帐号、全年工资合计、奖金合计,其中奖金合计这一栏需要从B表中来,B表里面有人员姓名和奖金合计:

  1. 首先定义需要使用的变量;
  2. 首先我们打开两张表;
  3. 从A表里面取一个人员姓名.
    注意:如果没有人员姓名了,直接退出,否则没完了。
  4. 从B表里面根据姓名查奖金合计.
  5. 如果找到了,则将奖金数粘贴到A表中的奖金合计一栏内.
  6. 将行号加1,并且跳到第3步继续下一行数据的替换。

自动操作魔法师增强版支持Microsoft Excel文档处理命令,可以对某个单元格进行读或者写,还支持查找单元格数据。 同时,自动魔法师支持循环和跳转指令,可以看出,我们可以使用这些命令来模拟表格间的数据替换操作过程.现在我们就试着根据上面的步骤建立一个脚本来完成此项工作.

建立步骤:

第一步: 建立一个空白魔法

首先,打开"魔法管理器",点击菜单“魔法”,选择“建立一个空白魔法”,如下图:

点击菜单项后,魔法"属性"对话框将会弹出来让我们指定新魔法的一些属性,我们给魔法取一个名称"表格间数据替换",然后点击"确定"直接建立魔法。如下图:

这时自动操作魔法师会弹出一个对话框询问是否编辑这个魔法,我们选择“”进入编辑器。

魔法编辑器打开后,我们根据前面列出的步骤来一步步插入需要的命令.

第二步: 设置变量

首先,需要定义多个变量用于指定读取的行数,保存读取的内容等等。点击编辑器的菜单"变量",再选择“增加一个变量”,依次加入变量“v_行号”, “v_姓名”,“v_找到的行号”,“v_结束”,“v_奖金”.

变量加入后,我们还需要对"v_行号"设置初始值,点击菜单"插入",选择"变量类",选择"设置变量值", 将变量值设为2(我们的数据在A表中是从第二行开始的)。

第三步: 打开两张表

点击编辑器的菜单"插入", 选择“文档类”,最后选择“打开文档”,如下图:

在命令选项窗口内,输入A表的路径,如:a.xls,文档标识名处我们输入:"A表",文档标识名是用来表示 文档的,在后续对A表的操作中,我们都需要指定这个名称表示是处理A表的。设置完成后,点击确定,如下图:

现在我们还需要打开B表.再次点击"插入"菜单加入"打开文档"命令,且使用使用"B表"做为文档标识名.

第四步: 从A表里面取一个人员姓名

首先,我们在这里插入一个标号(标号是结合跳转命令用的,用来指定需要跳到什么地方),这个标号将在最后跳转时使用。

点击编辑器的菜单"插入",选择“流程类”,再选择"标号",并设一个名称,如下图:

点击编辑器的菜单"插入", 选择“文档类”,选择“读Excel文档单元格”,设置好相关参数,如下图:

因为需要替换的数据不只一个,所以这里单元格行使用变量"v_行号"来代替,而不用具体的数字.读出的内容我们放入变量"v_姓名"中。

第五步: 判断是否已经读完所有数据

点击编辑器的菜单"插入",选择“流程类”,再选择"条件判断(根据变量值)",判断变量"v_结束"是否为1。如下图:

并且在条件判断里面加入"结束"(点击菜单"插入",选择"播放控制类"里面的“结束”。如下图:

第六步: B表里面根据姓名查奖金合计

点击编辑器的菜单"插入", 选择“文档类”,选择“查找EXCEL文档单元格”,设置好相关参数,如下图:

这里我们将使用"v_姓名"来代替要查找的内容,并将找到的行号返回到变量"v_找到的行号"中。

第七步: 读出奖金数据

点击编辑器的菜单"插入", 选择“文档类”,选择“读取EXCEL文档单元格”,将B表中的C列读出来放入"v_奖金"中。

第八步: 将B表里面的奖金合计数放到A表中

点击编辑器的菜单"插入",选择“文档类”,选择“写EXCEL文档单元格”,读取刚才查到的人员奖金数,如下图:

第九步: 跳转到开始

命令执行到这里,我们只完成了一行数据的替换,所以我们还需要做一些额外的工作继续完成所有的数据替换。点击编辑器的菜单"插入",选择“变量类”, 选择“设置变量值”,将变量"v_行号"+1,这样以便替换下一行数据。如下图:

然后,我们再加一条跳转命令,跳到"读人员姓名"处。如下图:

结束:

到此,我们的数据替换魔法已经建立好了。

时间: 2024-10-13 07:02:37

Excel文档间的数据替换 ---电脑版APP 自动操作魔法师的相关文章

POI 读取Excel文档中的数据——兼容Excel2003和Excel2007

Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能. HSSF - 提供读写Microsoft Excel格式档案的功能. XSSF - 提供读写Microsoft OOXML格式档案的功能.  以下是项目工程结构图: 使用POI解析EXCEL文件需要用到POI相关的jar包,这些jar包可以在apache官网上去下载:http://poi.apache.org/download.html: 这里我使

支持将数据导出到Excel文档的时候设置单元格格式的.NET控件Spire.DataExport

Spire.DataExport for .NET是e-iceblue公司推出的一款数据导出类.NET控件.作为一款专业的数据导出控件,Spire.DataExport for .NET可以帮助开发人员轻松快速的从各种主流数据库中导出数据并存储于各种文件格式中.他支持从SQL Command, DataTable,ListView中导出数据并存储于MS Excel,MS Word, HTML, XML, PDF, MS Access, DBF, SQL Script, SYLK, DIF, CS

利用Aspose.Word控件和Aspose.Cell控件,实现Word文档和Excel文档的模板化导出

我们知道,一般都导出的Word文档或者Excel文档,基本上分为两类,一类是动态生成全部文档的内容方式,一种是基于固定模板化的内容输出,后者在很多场合用的比较多,这也是企业报表规范化的一个体现. 我的博客介绍过几篇关于Aspose.Word控件和Aspose.Cell控件的使用操作,如下所示. <使用Aspose.Cell控件实现Excel高难度报表的生成(一)> <使用Aspose.Cell控件实现Excel高难度报表的生成(二)> <使用Aspose.Cell控件实现Ex

Asp.net的对Excel文档的导入导出操作

刚刚初入职场,在休闲的时间写下了项目中用到的对Excel文档操作的方法以及总结,多的不说,直接上代码 public static void CreateExcel(DataSet ds, string FileName) { //resp = Page.Response; HttpContext.Current.Response.Clear(); HttpContext.Current.Response.Buffer = true; HttpContext.Current.Response.Ch

没有保存的Excel文档能找回了吗

电脑死机或者突然断电,辛苦编辑的Excel文档来不及保存,大家心中会不会非常的懊恼? 那么该如何找回未保存的文档? 都叫兽教你一招,帮你迅速找回未保存的文档. Excel文档在编写过程中,会自动保存临时文件,默认间隔10分钟保存一次,这些文件可以恢复一部分已编辑好的数据.那么如何找到这些临时文件呢? 进入方法是“文件” →“选项”标签 →“保存”标签 →“自动恢复文件位置”位置,复制这个路径,并在文件夹中打开,即可查看这些临时文件. easyrecoveryhttp://www.easyreco

Python3正则表达式清洗Excel文档

本项目中虽然数据量不大,用Excel自带的替换功能也能实现,但是针对上几千条字段去匹配数据的话,Python就明显高效的多,现在开始讲解: 要清洗的是Excel文档中所有字段的地名, 需要清洗数据: 首先,需要导入xlrd和re包,前者是用来读写Excel文档,后者是正则表达式的包 1 #-*- coding:gbk -*- 2 import xlrd 3 import re 4 5 #打开一个Excel表 6 data = xlrd.open_workbook('/home/kin/compa

java读取WORD/EXCEL模板转换生成新WORD/EXCEL文档

原文:java读取WORD/EXCEL模板转换生成新WORD/EXCEL文档 代码下载地址:http://www.zuidaima.com/share/1550463239670784.htm 可以通过预先设置指定的excel和word模板,通过替换文档里面指定的标志来生成新的excel和word文档.excel的部分只是实现了简单的方法.word部分可以支持word2003和word2007格式.建议word使用07及其以上. 其实excel部分标签和jstl很像,而且支持循环等.word就支

EXCEL基础内容学习笔记(二)Excel文档的基本组成与功能介绍

一.基本组成 (一)工作簿.工作表与单元格 (1)工作簿:一个Excel文档即为一个工作簿. (2)工作表:工作簿中的每个表. (3)单元格:打开Excel文档,在工作表中单击,出现的加粗四边形即为单元格.单元格由行和列组成,命名时由行和列说明,称为单元格名称或地址. 一个工作簿中有若干个工作表,每个工作表有许多单元格组成. 二.功能介绍 (1)标题栏:Excel文档最上端. (2)选项卡 (3)工作区:每一个打开的选项卡都含有若干工作区. (4)名称框:所选择的单元格的名字. (5)编辑栏:可

Python处理Excel文档(xlrd, xlwt, xlutils)

简介 xlrd,xlwt和xlutils是用Python处理Excel文档(*.xls)的高效率工具.其中,xlrd只能读取xls,xlwt只能新建xls(不可以修改),xlutils能将xlrd.Book转为xlwt.Workbook,从而得以在现有xls的基础上修改数据,并创建一个新的xls,实现修改. (以下属性或方法并非全部,需要更多属性请参看文档:建议先参考文末Demo,再深入了解) xlrd Book(class) 由xlrd.open_work("example.xls"