Excel一键生成2020年保密工资签收清单,快得不得了!

为了活跃气氛,从留言区随机抽取3名赠送书籍《Excel VBA跟卢子一起学 早做完,不加班》。

VIP学员的问题,要根据原始数据,按照最终形式这个模板,批量生成每个人1-10月的总工资,一个人一个工作表。

原始数据

最终形式,只引用姓名、1-10月保密工资两个内容。

对于这种可以使用Word邮件合并,也可以使用VBA一键生成。

点按钮保密工资批量生成,经过几秒钟就全部生成完毕。

Sub 保密工资批量生成()

Dim i As Integer

For i = 1 To Sheets("原始数据").Range("a60000").End(xlUp).Row - 1

Sheets("最终形式").Select

Sheets("最终形式").Copy After:=Sheets(Sheets.Count)

Sheets(Sheets.Count).Name = Sheets("原始数据").Range("A" & i + 1)

Sheets(Sheets.Count).Range("A8") = Sheets("原始数据").Range("A" & i + 1)

Sheets(Sheets.Count).Range("C8") = Sheets("原始数据").Range("L" & i + 1)

Next

End Sub

本来到这里就可以了,后来我一想,后面学员可能需要将生成的工作表删除,于是我又增加了一段代码。

Sub 删除保密工资()

Dim i As Integer

Application.DisplayAlerts = False

For i = Sheets.Count To 3 Step -1

Sheets(i).Delete

Next

Application.DisplayAlerts = True

End Sub

其实,不管生成或者删除,都是用到For Next循环,这个真的很好用,我经常用这个循环。

生成工作表的,就是简单的某个表的某个单元格=另外一个表的另外一个单元格,只要你懂的单元格怎么写就行。

删除工作表的时候,记得从后面开始删,不能从前面往后面删,要不然循环的时候会出错。For i = Sheets.Count To 3 Step -1 这个就是从最后一个表到第3个表,步长为-1。

删除工作表的时候,正常会弹出警告对话框,Application.DisplayAlerts = False 这个就是关闭警告对话框,这样就可以一次性删除,删除后再开启警告对话框Application.DisplayAlerts = True。

提取码:f307

这边全部课程共计 1907.5 元,报名VIP会员,仅需 888 元,就可以学到全部课程。

推荐:一键生成工资条、工资表,点起来超爽

上篇:SUMIF、SUMIFS和SUMPRODUCT三大函数详解

作者:卢子,清华畅销书作者,《Excel效率手册 早做完,不加班》系列丛书创始人,个人公众号:Excel不加班(ID:Excelbujiaban)

(0)

相关推荐