卡饭网 > wps > 正文

利用WPS表格制作工资条成绩条

来源:本站整理 作者:梦在深巷 时间:2012-06-30 23:36:02

制作工资条、成绩单是周期性的重复劳动,单调乏味。对此,本文活用WPS表格的智能填充加巧妙算法,教你只用一次粘贴、一个公式、一次拖曳,搞定如图 1样式的条式单据。

利用WPS表格制作工资条成绩条

图 1 完成图

言归正传,先操作,后解说。

1. 设定:

A表=原始工资表(见图 2)

B表=生成工资条的空白表

利用WPS表格制作工资条成绩条 利用WPS表格制作工资条成绩条

图 2 原始工资表

2. 操作步骤:

2.1. 粘贴A表表头到B表A1单元;

2.2. 选择与B表表头同宽度的下一行区域,键入以下公式后,按Ctrl+Enter填充所选区域① 并顺便设置框线。见图 3;

=Indirect("A表!"&Address((Row()+1)/3+1,Column())) ②

注意:若表头占两行,改公式中“3+1” 为“4+2”;若表头占三行,为“5+3“,依此类推③。

利用WPS表格制作工资条成绩条

图 3 复制表头及录入公式

2.3. 选中B表表头,向下拉至数据所能呈现的行数,如公式计算所得,拉到行6。④(与表头同宽度),移动指针到所选区域右下角填充柄上(指针呈“十”),拖拽填充柄向下(见图 4),直到能呈现所有数据。截止行号=(表头占用行数+1)×记录条数。

利用WPS表格制作工资条成绩条

图 4 分组填充

3. 技巧与算法:

① 组合键Ctrl+Enter—— 能在相邻或不相邻的多个选定区域填充数据;

② 公式涉及4个函数,此例中:

Indirect(单元格引用文本)函数—— 得到以文本表示的目标单元格值。可能的文本形如:"A表!$A$3"、"A表!$B$3"等;

Address(行号,列号)函数——得到数值代表的行列交叉单元的地址文本。结果貌似:"$A$3","B3";

Row( )函数——返回该单元的行号;

Column( )函数——返回该单元的列号;

③ 算法思路:目的是将A表记录行{2,3,4,5,...}映射到B表记录行{2,5,8,11,....}。后者关联到索引(i)和表头行数(n),可表述为:B表第i行记录 = (i+n+1)/(n+2)+n,而Row( ) 等效于i+n。

④ 预留裁切区域,其空白行数,决定公式"(Row()+x)/y+1" 中x,y的取值;

若仍嫌繁复,可以到金山官方论坛(链接见下方),使用AutoIt工具集插件中的“生成工资条成绩条

”解决方案,仅需一次单击,完成所有任务(建表、记录填充、设置框线、智能分页、打印)

相关推荐