EXCEL一键生成工资条、工资表,点起来超爽

原创作者: 卢子 转自:Excel不加班

真的没骗你,点起来超爽,做完了2个按钮,我都点了几十次。

点一下工资表就变成工资条。

EXCEL一键生成工资条、工资表,点起来超爽

再点一下,工资条就变成工资表。

EXCEL一键生成工资条、工资表,点起来超爽

要用VBA实现这2个功能,真的很简单,只要你懂得最基础的复制粘贴,插入删除等功能即可。

其实,VBA就是将你当初学基础操作的过程,再重新来一遍而已。不要说什么不会英语,学不会之类,压根儿就跟英语无关,我也不会英语。

工资条,其实就是将第一行的标题复制,插入到3、5、7等奇数行,对吧。

EXCEL一键生成工资条、工资表,点起来超爽

Step 01 录制一个宏,将第一行的标题复制,插入到第3行。

EXCEL一键生成工资条、工资表,点起来超爽

Step 02 点VB进入后台,再点模块,就可以看到刚刚录制的宏。

EXCEL一键生成工资条、工资表,点起来超爽

Step 03 现在已经实现了在第3行插入标题,下面要实现在第5行插入标题。将A3改成A5,点绿色运行按钮。

EXCEL一键生成工资条、工资表,点起来超爽

接着是7、9、11……如果一次次改,那就体现不了VBA的优越性了,前面已经提过,可以借助循环语句。

Sub 工资条()

For i = 1 To 18

Rows(“1:1”).Select

Selection.Copy

Range(“A” & i * 2 + 1).Select

Selection.Insert Shift:=xlDown

Next

End Sub

现在是19个人,而第一个人有标题,也就是需要操作18次。i * 2 + 1就是获取数字3、5、7……

写代码的时候,养成一个好习惯,就是定义变量,最终代码就出来了。

Sub 工资条()

Dim i As Integer

For i = 1 To 18

Rows(“1:1”).Select

Selection.Copy

Range(“A” & i * 2 + 1).Select

Selection.Insert Shift:=xlDown

Next

End Sub

Step 04 将原来手工插入的标题删除掉,运行代码,即可生成工资条。

EXCEL一键生成工资条、工资表,点起来超爽

不难吧。

现在如何将工资条复原成工资表,也就是将3、5、7……行删除掉。

同理,录制宏,改代码。

Step 01 录制一个宏,选择A3,删除整行。

EXCEL一键生成工资条、工资表,点起来超爽

Step 02 点VB进入后台,再点模块,就可以看到刚刚录制的宏。

EXCEL一键生成工资条、工资表,点起来超爽

Step 03 有了前面的基础,现在修改代码就变得简单,将工资条修改的部分全部照搬过来。

EXCEL一键生成工资条、工资表,点起来超爽

刚刚录制宏的时候是从上删除行,删除后 ,你会发现标题行错位了,现在并不是3、5、7……行。

EXCEL一键生成工资条、工资表,点起来超爽

记住,删除行跟插入行有所不同,插入行是从上面往下插入,而删除行要从下面往上删除。

现在是从18倒数到1,Step -1就是步长-1。

Sub 工资表()

Dim i As Integer

For i = 18 To 1 Step -1

Range(“A” & i * 2 + 1).Select

Selection.EntireRow.Delete

Next

End Sub

EXCEL一键生成工资条、工资表,点起来超爽

Step 04 将原来手工删除的标题恢复,运行代码,即可生成工资表。

EXCEL一键生成工资条、工资表,点起来超爽

最后,插入按钮来执行代码,会看起来更高大上。

EXCEL一键生成工资条、工资表,点起来超爽

不要老是害怕学不会,只要你知道循环语句,会录制宏就可以解决掉很多问题了。

EXCEL一键生成工资条、工资表,点起来超爽专栏7天Excel实战速成作者:考呀呀Excel技巧69币1.6万人已购查看

版权声明:本站发布此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,请读者仅作参考,并请自行核实相关内容。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

(0)
菩提菩提
上一篇 2024-04-01 23:51
下一篇 2024-04-02 01:53

相关推荐