每到月底,我们最开心的就是等着发工资了,而财务烦心的莫过于一张张的员工工资条了。一条条记录,粘贴,劳动量很大。那么一张工资表,如何把它快速制作成工资条呢,个人总结整理了几个小套路,希望对大家工作上有用。
方法一:利用编辑里面的空格定位
第一步:建立辅助区配合F5键定位,实现隔行插入空行;
第二步:复制标题行,定位空行,并粘贴标题行,删除辅助列,完成。
方法二:利用表格编辑的排序功能
第一步:建立辅助列,生成序列,复制生成序列;
第二步:选择扩展当前区域(将排序选定区域扩展至表格内所有数据)--对辅助列升序操作;
第三步:复制标题行,定位空值,并粘贴标题行,删除辅助列,完成。
方法三:Vlookup函数法。
复制标题行到G1单元格 - 在G2输入1,然后H2输入公式,并向右复制
=VLOOKUP($G2,$A$1:$E$7,COLUMN(B1),0)
最后选取标题行、公式行和空行,向下拖动复制。
方法四:函数法
这是一个比较通用的公式(工资条隔一行):
=IF(MOD(ROW(A1),3),OFFSET($A$1,(MOD(ROW(A1)-1,3)>0)*ROUND(ROW(A1)/3,),COLUMN(A2)-1),"")
套用公式方法:只需要修改上面公式的$A$1 ,它是工资表的标题行的第1个单元格地址(如果引用其他表,需要加上“表名!”,如工资表!$A$1)。
再讲另一个通用公式:
公式:=INDEX($A:$E,CHOOSE(MOD(ROW(A3),3)+1,1,INT(ROW(A6)/3),4^8),COLUMN(A1))&""
套用公式方法:只需要修改上面公式的$A:$E ,它是工资表的整个区域。
方法五:VBA法
第一步:单击菜单栏“工具”—“宏”—“Visual Basic编辑器”或直接按下Alt+F11快捷键打开VBA编辑窗口。菜单栏“插入”—“模块”;
第二步:打开模块后,并在模块中复制以下代码。
由于本人是初学VBA,请大神级人物,不要嘲笑我的代码,以下为VBA代码:
Sub 工资条制作()
Dim n%
n = A("A:A")) '获取工资条总行数
A = False '关闭屏幕更新
For i = n To 1 Step -1
If i > 2 Then
Range("A1:E1").Copy '复制标题行
Range("A" & i).Select
Selec '插入一行
Selec '在插入一行
A = False '清空剪贴板
End If
Next
[a1].Select
A = True '打开屏幕更新
End Sub
动态演示:
套用方法:"A1:E1"为工资条区域,故只需修改Range("A1:E1").Copy,这行的区域代码,即可。
以上制作员工工资条方法,你都Get到了吗。