编写VBA代码有哪些注意事项?

HI,大家好,我是星光。

这篇给大家聊一下编写VBA代码有哪些注意事项。

不过需要提前说明的是,由于大家现在也没啥编程经验,以下内容有一部分可能很难理解,那就不必理解,知道有那么回事就OK。这就好比小学生被要求尊师重教爱国守法,他也不懂为什么,他也不会问,但他必须得知道,不然就成某地废青了不是?

1>名称问题

名称包含了过程名称和后面咱们会讲到的变量名称。名称要符合规则,上面咱们也讲了过程名称的相关规则;此外,名称起的尽量有意义些,这样可以保证代码的可读性,便于自己和他人理解代码。

划重点:如果你是我知识星球的学员,这一点请务必遵守,不然批改您老人家的VBA作业实在是一件非常容易掉头发的事——觉悟吧,少年,事到如今,只要一扯到头发,你就应该明白问题的严重程度了!!

那么什么叫有意义的名称?
拿过程名称来说,指的是用一到多个词简化说明代码的功能;最好在过程前面,或过程名称后面增加详细的注释(什么是注释?我待会就给你讲)
至于变量名称……这个规则稍微多些,就放到变量章节再说吧。


2>代码的对齐与缩进
VBA代码使用缩进的形式表示代码块之间的层次关系,同一层次的代码应该保持相同的左边距,不同层次的代码需要向右缩进指定距离,这个距离通常保持系统默认的4个空格的宽度就可以了。
依次单击【菜单】→【工具】→【选项】,打开选项对话框,切换到【编辑器】选项卡,选中【自动缩进】复选框,编辑代码时按一次Tab键,即可缩进指定的Tab宽度(默认为4个空格)。
你问我什么是层次?层次可以简单的理解为代码的上下级隶属关系。
我举一个例子(不要怀疑,我的梦想就是举例世界冠军)
在上图所示的代码中。Sub和End Sub属于第1层级,不必缩进;接下来声明变量语句和For循环语句隶属于Sub,属于不同层次,因此向右缩进一个Tab键。IF语句在For循环语句内部,隶属于For,因此需要再次向右缩进一个Tab键……
最后的MsgBox语句不在For循环语句内部,它和For是平级关系,只隶属于Sub语句,于是只需要按一次Tab键。
需要说明的是,从VBA语法来讲,缩进不是必须的,即便不缩进代码也可以正常运行,但这样的代码很难阅读和维护。不缩进的代码只好比下图所示神医的手迹——千里快哉风,他娘的这是什么鬼画符。
3>代码注释
为代码添加注释应该成为VBA初学者编写代码的好习惯。
这样做有两个好处,一个是方便自己和他人阅读代码,可以比较快速的明白代码的含义、编写思路和代码的功能。很多人写了一段代码,过几天再看,完全不知道自己当初写那代码是什么鬼;这多半是没有添加注释的缘故——不过相比于第二个好处,这个好处其实是次要的。
第二个好处是为代码添加准确而详细的注释能够帮助你梳理代码的逻辑关系,加深对相关代码功能的认知和记忆;这相当于你为自己的代码做了一次深刻的理解笔记;相信我,对于VBA初学者而言,没有什么比这更实惠的了。
……注释分为两种,一种是咱们前面讲过的为过程整体添加注释,说明过程的功能和编程思路,常写在过程的上部或过程名称的后面。一种是为个别语句添加注释,常写在相关语句的后面。如果语句偏长,也可以写在代码的上或下。
如何为代码添加注释?
在添加注释的位置,先输入一个半角撇号,再输入注释内容就可以了。注释内容不会被系统执行,同时会被默认标注为绿色字体,这样会方便用户把注释和代码区分开来。
除了手工输入半角撇号制作注释外,系统还在工具栏中为用户提供了【注释块】和【解除注释块】功能。
【注释块】可以将整段代码设置为注释,常用于代码调试,或将部分代码转为备用状态。
【解除注释块】顾名思义,可以将设置为注释的整段代码解除注释状态。
4>长代码的换行和短代码的并行

当一行代码过长时,比如上面那段你让Excel释放彩虹屁的代码,需要拖动滚动条才能够看完整,这很不方便代码的编辑和阅读。
此时我们就可以将代码强制换行。在需要换行的地方输入一个空格,再输入一个短下划线_,然后按回车键,将后面的代码移到下一行,最后再按一下Tab键,使换行的部分向右缩进,表示该行代码隶属于上一行。
有个姓罗的老师几百年前说过,天下大势合久必分,分久必合,既然有代码换行就有代码并行——也就是将多行代码合并为一行。
如果需要将多行语句写在同一行,不同语句中间用冒号分隔即可。如下图所示。
(0)

相关推荐

  • Python|python中代码格式报错

    问题描述今天小编在Python语言中,写了几行简单的代码,确定没有明显的语法错误,但运行时出现报错IndentationError:unexpected idenx.Python中比较常见的缩进错误, ...

  • 如何避免把 Python 代码写得跟屎一样

    同样的功能,你可以使用不同的代码方式来实现,它们,都可以跑的起来,而在背后的那些「跳动」着的代码,有的美如诗,有的丑如屎...如果说,代码是有生命的,那么你希望它是温柔的天仙,还是抠脚的大汉? 你在 ...

  • Python入门:四大常用Python基本语法

    在之前的文章中我们对Python环境的安装以及Python专属编写工具的下载安装教程做了详细的讲解,那安装完成以上两步以后接下来就是了解Python的常用基本语法,具体介绍如下所示: Python语法 ...

  • Python if else对缩进的要求

    大家在编写代码过程中仍然要注意一些细节,尤其是代码块的缩进,这对if else选择结构极其重要. Python是以缩进来标记代码块的,代码块一定要有缩进,没有缩进的不是代码块.另外,同一个代码块的缩进 ...

  • VBE——编写 VBA 代码的地方(别怕VBA)

    听过VBA代码吗?羡慕能用代码高效办公的人吧!不会VBA代码?VBA代码很难写?别怕,Excel 可以自动生成它. VBA 过程在哪编写 使用宏录制器录下的宏,还有一个称呼--VBA过程.要使用VBA ...

  • 如何编写VBA代码?

    HI,大家好,我是星光. 前面两期分别给大家聊了什么是VBA.什么是VBE,今天再给大家聊一下如何编写VBA代码--看我小眼神--这事说起来可有意思了. 编写VBA代码常用的方式有三种. 第一种方式: ...

  • VBA代码库11:强制用户启用宏(续)

    excelperfect 在<VBA代码库10:强制用户启用宏>中,讲解了一段用户在打开工作簿时必须启用宏才能使用工作簿功能的代码.本文给出另一段同样可以实现强制用户启用宏的代码. 如果用 ...

  • VBA代码库10:强制用户启用宏

    有时,必须确保用户在打开工作簿时启用宏,否则就不能实现工作簿的效果.由于无法使用宏去打开宏,因此需要一种确保用户启用宏的技术.下面讲解的方法隐藏除"欢迎"工作表(告诉用户启用宏)之 ...

  • excelvba拆分表格视频:编辑vba代码按数据列智能拆分表格

    excelvba拆分表格视频|excel智能拆分表格视频|excel按数据列拆分视频|excel编辑vba代码视频 本视频教程由部落窝教育分享.

  • VBA代码编辑器(包含VBA智能排版插件)

    原始出处:www.cnblogs.com/Charltsing/p/SmartIndenter64.html 作者QQ: 564955427 从2016年6月本程序发布以来,已经有数万名VBA开发者测 ...

  • 如何实现打开工作簿就自动运行VBA代码?

    问:如下图所示的工作表,我希望在打开该工作簿时,用户能看到一条关于该工作簿用途的提示消息,如何编写VBA代码? 答:有两种实现方法. 第一种,使用Workbook_Open事件.代码如下: Priva ...

  • 写VBA代码还在一个个敲字母? 你太OUT了

    VBA神键手智能输入提示使用说明 下载地址详见原文链接 或者公众号主页回复 代码助手 VBA神键手输入提示通过对预置词库,以及代码库的模糊搜索提示,实现极速编程体验,且支持中文拼音首字母搜索,常用代码 ...

  • Excel多表合并一定要用VBA代码吗?

    工作中有时候需要将多张工作表汇总到一张工作表,这个问题在我的Excel书<Excel高手捷径:一招鲜,吃遍天>中第118招和119招介绍了用VBA代码实现.本文另辟蹊径用函数和公式瞬间实现 ...