发工资啦!看着工资条上都不够纳税起征点的3000元,内心无比纠结。
据说最没用的就是工资条,看了生气,(⊙o⊙)…擦屁屁太细(好污啊~)。
好吧,不管怎样,今天我们来学习这个让人又爱又恨的工资条到底是如何制作的。(学好Excel,争取涨工资,逆袭高富帅,从此走上人生巅峰……)
1、添加辅助列(一次性)
方法1:先复制在排序
在辅助列输入1、2、……再复制粘贴序列,复制标题行,粘贴到有数字序列的区域,然后根据辅助列的序列排序即可。
方法2:先排序再复制
构造与方法1相同的辅助列,排序,复制标题行,在首列数据区域定位(F5)空值,粘贴标题行。
方法3:插入空行定位
错行错列输入辅助数据(位置对角,数据随意),定位(F5)辅助数据,插入整行,复制标题行,在首行定位空值,粘贴标题行。
2、函数公式法(一劳永逸)
方法4:直接引用“=”
添加辅助列A2、A3、……,将每个员工的记录按照对应的行和列进行编码,复制A2,同时选择A2和1个空白单元格,下拉,完成辅助列的构造,查找和替换-替换,将A替换为“=A”,实现单元格的引用,向右拖,即可完成每个人工资条记录的复制。
复制标题行,F5定位空白单元格,粘贴标题行,即完成工资条的制作。
方法5:VLOOKUP函数
新建工作表,复制粘贴标题行,输入序号1,利用VLOOKUP公式完成数据查找。
=VLOOKUP($A2,Sheet1!$A$2:$K$12,COLUMN(),)
拖动单元格,完成公式的复制,同时选择第1行和第2行,向下拖动,即可完成。
如果希望每个员工的工资条中间有一个空白行,则同时选择1~3行向下拖动。
方法6:OFFSET函数
新建工作表,如果是奇数行,则直接引用原始数据的第一行,如果是偶数行,则依次向下引用工资条记录。(公式可以直接套用)
=IF(MOD(ROW(A1),2),OFFSET(Sheet1!$A$1,0,COLUMN(A2)-1),OFFSET(INDIRECT("Sheet1!$A"&ROW()/2+1),0,COLUMN(A2)-1))
方法7:INDEX函数
新建工作表,A1单元格=INDEX(Sheet1!A:A,1,1),右拖公式
A2单元格=INDEX(Sheet1!A:A,COUNTIF($A$1:A1,A1)+1,1),右拖公式
同时选择第1行和第2行,往下拉公式,完成操作。
三、VBA宏代码
在首行插入空白行,Alt+F11打开VBA窗口,插入-模块,输入代码。
Sub 拆分工资条()
For i = 3 To 33 Step 3 '从第3行开始复制到第33行(10*3),然后每3行一组
Range("A1:J2").Copy '复制空白行和标题行
Rows(i).Select
Selection.Insert Shift:=xlDown
Application.CutCopyMode = False
Next
End Sub
运行-运行子过程。打开Excel表格,删除前三行,即完成。
好啦,教程写得好辛苦,每一篇都至少需要一周的时间,比鸡汤难多了。
希望大家能够支持我的分享。