1.WPS表格中如何批量制作工资条
第一种方法:查找替换法 首先,用WPS表格打开源数据文档,如图1,复制所有数据。
关闭WPS表格(一定要关闭,不然粘贴到WPS文字时会有表格),打开WPS文字,按“Ctrl+V”将从源文档中复制来的数据粘贴到新建的空白文档中。此时,这些数据呈用制表符和回车符分隔的文本状态(图2)。
接下来,制作第1行表头的内容到剪贴板中,然后按下快捷键“Ctrl+H”,调出“查找和替换”对话框,在“查找内容”中输入“^p”,并把刚刚复制的表头粘贴到“替换为”中文本框中,并在其前面连续输入两个“^p”,后面再输入一个“^p”,并注意选中“使用通配符”(如图3)。 按一下“全部替换”按钮,关闭“查找和替换”对话框,此时,你将发现除了文档开头和页眉页脚多出一行表头和一些回车符外,所有的数据行上方都有一行表头,并且下方有一个空行。
删除多余的表头行,全选文档,从“表格”菜单中选择“转换→文本转换成表格”,确定后即可将所有数据转换成一个表格。美中不足的是,空的表格行中也有纵向的线条,显得不够美观。
这一点,我们可以用将所有纵向表格线全部设置为“无边框”模式,即只显示横向表格线的方法来解决,最后打印的效果如图4所示。 第二种方法:用Next域法 首先声明,下面两种方法都要用邮件合并功能,需要先将WPS Office 2007升级到最新版,并且安装VBA环境。
用WPS文字新建一个文档,从“视图→工具栏”中调出“邮件合并”工具条(也可用鼠标右击工具条空白处,选择“邮件合并”)。然后点一下工具条最左边的“打开数据源”按钮,找到并打开存有源数据的WPS表格文档。
然后按照源数据的表头样式,制作一个2行7列的表格,在表格的第1行输入表头的内容,在第二行各单元格中依次按“插入合并域”按钮(左边第3个按钮),插入相应的“合并域”项目,再将光标定位在表格下面一行,用鼠标左键点击“插入合并域”右侧的下拉菜单,选择“插入Next域”,得到如图5所示内容。 此时,再点一下“查看合并数据”按钮(左数第5个),使插入的域显示为数据内容。
然后选中表格和插入了“Next域”的一行,回车后反复粘贴,直到表格排满一页为止,并删除最后一个“NETX 域”。此时虽然显示的全部是第一个人(张三)的工资条,但实际上却并非如此,用鼠标左键按两下“查看合并数据”按钮,你会发现,工资条中的数据已不再重复(图6)。
最后,再点一下“合并到新文档”按钮,OK,大功告成! 第三种方法:删除分节符法 第二种方法之所以要用Next域,主要是为了防止合并到新文档后每一页只有一个记录的问题。我们反其道而行之,还可以先生成每页只有一个记录的工资条文档,然后再删除分节符,把工资条“召集”到一起。
首先,与第二种方法一样,先制作一个2行7列的表格,并填充好表头和合并域。然后在表格下面再敲一下回车键,使其有两个换行符号。
直接按“合并到新文档”按钮,生成工资条文档。我们发现生成的新文档,每页只有一个工资条,而工资条下面有一个“分节符(下一页)”(图7)。
所以会每页只有一个工资条,就是这个“分节符(下一页)”在捣乱了。怎么办?对,按“Ctrl+H”调出“查找和替换”面板,在“查找内容”中输入“^b”,“替换为”中不输入任何内容(如果有内容,则全部删除),并勾选“使用通配符”(图8),点“全部替换”并关闭。
再看文档,工资条不再闹分裂,一条挨着一条,整齐地排列好了。
2.利用WPS表格如何制作工资条
图 1 完成图
言归正传,先操作,后解说。
1. 设定:
A表=原始工资表(见图 2)
B表=生成工资条的空白表
图 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“,依此类推③。
图 3 复制表头及录入公式
2.3. 选中B表表头,向下拉至数据所能呈现的行数,如公式计算所得,拉到行6。④(与表头同宽度),移动指针到所选区域右下角填充柄上(指针呈“十”),拖拽填充柄向下(见图 4),直到能呈现所有数据。截止行号=(表头占用行数+1)*记录条数。
图 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工具集插件中的“生成工资条成绩条
”解决方案,仅需一次单击,完成所有任务(建表、记录填充、设置框线、智能分页、打印)
3.EXCEL表格的工资单怎么生成工资条
用录制宏实现工资条的生成
录制两段宏:
1.第一个宏的录制与运行:选择sheet2的A1单元格,单击“工具-宏-录制新宏”,设快捷键为ctrl+j,点“确定”,出现一个录制宏的工具条,确保该工具条上的第二个按钮“相对引用”为选中状态。然后点击sheet1工作表标签回到sheet1中选择放置工资表列字段的那一整行也就是标题行)
2.第二个宏的录制与运行:选择sheet2的A2单元格,单击“工具-宏-录制新宏”,设快捷键为ctrl+k,点“确定”后,同样确保“相对引用”按钮为选中状态。然后转到sheet1中选择放置工资表第一条记录的那一整行(也就是除标题行之外的第一条记录行)按ctrl+c复制,再回到sheet2,按ctrl+v粘贴,再选择A5单元格,再次转到sheet1选择第二条记录行进行复制,并再次回到sheet2粘贴,再将光标定位到A8单元格,单击“停止录制”按钮,完成录制。这时,按住ctrl键不放,不停地按k键即可实现快速将各条不同的记录行有序地复制到其它行。
4.工资表已经做好,excel表格,怎么做成工资条
如图:
将公式
=IF(ROW()>COUNTA(工资表1!$B:$B)*2-2,"",OFFSET(工资表1!A$1,(MOD(ROW()-1,2)>0)*INT(ROW()/2),0))
粘贴至A1单元格.
注:将"工资表1"改为工资表的实际标签名
对准右下角,光标成"+"状时,按住左键向右拖,再向下拖,即可达到上图效果.
不知为何没有回复邮件,就再介绍一种麻烦点的方法吧: 如图: 复制系号(可不含最后一行的序号),粘贴在下方,如图: 将第一行(不含A列)复制后粘贴至下方,如图: 对准右下角,光标成"+"状时双击,如图: 光标放在A列的任意 一个单元格内,点,效果如图: 没有复制序号13,则不会有最后一行多余的. 如果姓名 行前都有改为"序号"字样",则选中一二两行,对准右下角,光标成"+"状时双击,如图: