分享

一键生成多行标题工资条以及固定资产智能筛选

 Excel不加班 2019-12-26

很多人都是刚接触到宏,这时出现各种问题很正常,卢子会一个个慢慢讲解。今天,针对这两天的文章读者提出的疑问进行讲解。

1.一键生成多行标题工资条

前天的文章《制作工资条最快的方法》是制作单行标题工资条,而实际上可能是多行工资条,而且中间还要用空行隔开,方便裁剪。

不管是单行标题或者多行标题,操作步骤都大同小异。

Step 01 鼠标放在A1单元格,点击开发工具,使用相对引用,录制宏。复制前三行,在第五行插入复制的单元格,再将鼠标放在A5单元格,停止录制宏。

前面多留一行空白的作用是让工资条都有空行,方便裁剪。

Step 02 点击Visual Basic,在模块里面就可以找到刚刚录制的宏代码。

Step 03 将那些绿色字体的全部删除掉,然后在代码前后添加For Next语句,这个就是循环语句,循环的次数就是1 To 21,也就是循环21次复制粘贴插入标题的动作。

Step 04 将鼠标放在A1单元格,然后运行代码,即可生成多行标题的工资条。

以后直接调用代码即可一键生成工资条。

2.固定资产智能筛选

宏非常老实,也很听话。不管你交代他做什么事,他都会按照你吩咐的完全执行。这样很好,但也容易出现问题,因为宏不懂思考,万一你出错了,宏也会跟着出错。

昨天的文章《让Excel的免费劳工替你干活,固定资产智能筛选!》如果还没看,先看再说。

跟着卢子一起来看宏记录下来的代码:

Sub 宏3()

'

' 宏3 宏

'

'

    Application.CutCopyMode = False

    Application.CutCopyMode = False

    Application.CutCopyMode = False

    Application.CutCopyMode = False

    Range("A1:E43").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _

        "G1:H2"), CopyToRange:=Range("G5"), Unique:=False

End Sub

代码解释:

01 红色字体就是复制粘贴所生成的代码,这个实际上我们并不需要,可以删除。

02 我们打开高级筛选的界面就可以看到蓝色字体对应的区域,这时发现有一个问题,就是复制到的区域代码是G5,而高级筛选是G5:K5。

复制到的区域,原来的明细有多少列,你就要选多少列,切记!

03 宏生成的代码是可以修改的,让宏更智能。因为宏不懂思考,你就要替宏思考。将G5改成G5:K5。

Sub 宏3()

    Range("A1:E43").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _

        "G1:H2"), CopyToRange:=Range("G5:K5"), Unique:=False

End Sub

除了复制到的区域可以改,列表区域也可以改,比如你数据每天都要更新,如果区域固定死了,新增加的内容就没法筛选。这时我们可以将代码中的列表区域改成整列A:E。

Sub 宏3()

    Range("A:E").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _

        "G1:H2"), CopyToRange:=Range("G5:K5"), Unique:=False

End Sub

现在新增加4行沙发的数据,使用人Excel不加班。

修改代码以后,现在新增数据,也能筛选出来。

如有疑问,留言区提出。


推荐:制作工资条最快的方法

上篇:让Excel的免费劳工替你干活,固定资产智能筛选!

假如你失业了,你还能靠什么养活自己?

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

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多