不骗你!VBA入门其实很简单

2019-05-29 11:00:07 0 3

这是卢子6年前使用的一份出库单,里面有部分是手工输入的,有部分是用公式生成的。每次要开单的时候,都要将手工输入的内容删除掉。


其实,将这些删除也很快,不过,后来卢子还是使用VBA一键删除。如果你觉得每天都在做重复的工作觉得繁琐,VBA或许就能帮你解决问题。


运行VBA,就将不是公式的删除,公式的全部保留下来。


这个很简单,跟着卢子一起来操作。


Step 01 点击开发工具,录制宏,确定。


Step 02 选择区域,按Ctrl+G定位常量,确定,按Delete,停止录制。


Step 03 插入一张图片,来执行删除常量操作。


VBA代码可以自己编写,也可以通过录制宏生成,有了代码以后,就用一张图片来执行操作。原理就这样,很好理解。


顺着这个原理,来录制第2个宏,并修改代码。


要实现的效果是,将所有隐藏的工作表取消隐藏。默认情况下Excel只能单独取消一个工作表的隐藏,没法批量取消。


Step 01 录制一个取消工作表隐藏的宏。


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


Sheets("Sheet1").Visible = True就是取消Sheet1的隐藏。


录入宏的时候,是直接用工作表名来代替。实际在写VBA的时候,可以用工作表序号来代替,比如取消第5个工作表的隐藏,代码可以这样写。

Sheets(5).Visible = True


执行代码以后,第5个工作表就取消隐藏。


5这个也可以换成一个变量i,让i从1一直到7,这样就可以取消所有工作表的隐藏,也就是For Next循环。


这样写虽然可以将所有工作表都取消隐藏,但没有通用性。在实际工作中,每个人的工作表是不固定的,不能用固定数字7代替。在VBA中,可以用Sheets.Count计算总共有多少个工作表。


现在代码就逐渐完善了。



再将无关的内容删除掉,并修改VBA代码的名称,这样看起来就更专业。


最后,在录制宏的过程中,有些代码实际上可有可无,也可以删除掉,比如Sheets("发货单").Select。经过了多次修改,最终的代码就出来了。


没骗你吧,VBA入门就是这么一回事,多练习几次就找到手感了。