专栏首页完美Excel一起学Excel专业开发06:Excel应用程序开发的一些好的做法

一起学Excel专业开发06:Excel应用程序开发的一些好的做法

在进行Excel应用程序开发时,如果遵循一些好的做法,将会极大地增强程序的可读性、可理解性、可维护性和复用性。

代码注释

良好的代码注释是Excel应用程序开发中非常重要的原则之一。

注释的作用

1.帮助快速理解代码

2.帮助更好地使用代码

注释什么

1.说明代码是如何组织的

2.说明代码中的对象和过程如何使用

3.说明程序的功能

4.说明程序是如何演进的

注释的具体内容

1.模块级注释。位于模块的开始部分,简要描述模块中代码的目的。

2.过程级注释。通常放置于每个过程名上方或者过程的第一行语句上方,说明过程的目的、注意事项、参数的意义和作用、函数返回值说明、过程修改的时间和内容等。

3.内部注释。放置在需要说明的代码上方或者右侧,说明代码的目的,而不应简单地描述代码的操作。

代码格式

采用合理的格式编写代码,有助于增强代码的可读性,也有助于认清代码所包含的逻辑关系。代码格式主要通过在代码中加入空格字符、制表符、空行等空白区域来实现。

1.将相关的代码放在一起,不相关的代码之间使用空行分隔。空行分隔开的代码段具有相对独立性,有助于理解代码的逻辑结构。

2.在同一代码段中,对齐的代码行之间往往是并列关系,而缩进则用于表明代码行之间的逻辑结构关系。

3.合理使用代码连接符(即英文的下划线_),可以在多行中显示较长的语句。

代码编写

模块设置

1.在模块顶部使用Option Explicit语句。这将强制必须显式声明所有变量,这样会避免因拼写错误导致VBA认为其是一个新变量的问题发生。

2.如果想隐藏模块中的过程,使用户接口或其他Excel工程不能使用模块中的过程,则可以在模块顶部使用Option Private Module语句声明。

3.在模块顶部声明Option Base 1,会将未指定下限的数组变量的下限值设置为1;声明Option Compare Text会在比较字符串时基于文本而不是二进制比较。建议尽量少使用这两个设置语句,以免在其他模块中使用该模块中的过程时导致不易发现的错误。

合理使用变量和常量

1.避免重复使用变量。

2.避免使用变体数据类型。

3.避免使用As New声明对象变量。

4.尽量使用完整的对象名称。

5.应使用LBound和UBound来确定数组的边界。

6.在Next语句后总是写上循环的计数变量。

7.使用易于理解的名称命名的常量代替要多处使用的数字或者以后可能要修改的数字。

8.除非必需,应尽可能使用早期绑定。

预防性编码

1.尽量在Excel的早期版本中设计应用程序。

2.在声明过程参数时,显式使用ByRef或ByVal。

3.在使用前验证过程参数的有效性。

4.显示调用对象的默认属性。

5.经常使用菜单“调试-编译”命令。

本文分享自微信公众号 - 完美Excel(excelperfect),作者:fanjy

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-07-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • VBA专题10-4:使用VBA操控Excel界面之设置工作簿视图和窗口

    如果活动工作表不是标准工作表,那么上述语句执行时会导致运行时错误,因为图表工作表、宏工作表或对话框工作表没有这些视图选项。

    fanjy
  • VBA实用小程序51: 将图表导出为图片(API版)

    在前面的VBA实用小程序15和16中,我们给出了两个将Excel图表导出为图片的VBA程序,详见下面的链接:

    fanjy
  • Excel小技巧71:让RAND函数生成的随机数固定不变

    有时候,我们使用RAND函数生成了一系列随机数,但是不希望它们经常改变。可以以粘贴值的方式将它们粘贴到另一组单元格,但这样的话,它们就永远固定下来了;还可以使用...

    fanjy
  • Python基础—让你规范Python语言的使用

    群内不定时分享干货,包括最新的python企业案例学习资料和零基础入门教程,欢迎初学和进阶中的小伙伴入群学习交流 ? Lint 定义: pylint是一个在Py...

    企鹅号小编
  • 手把手教你逆向分析 Android 程序

    很多人写文章,喜欢把什么行业现状啊,研究现状啊什么的写了一大通,感觉好像在写毕业论文似的,我这不废话,先直接上几个图,感受一下。 ? 第一张图是在把代码注入到地...

    腾讯Bugly
  • 年薪30w+的软件开发工程师需要掌握的技能

    现在,有这样一种主流观念,压垮了很多新手软件开发者,那就是你需要学习很多东西才能成为软件开发人员,并且很多人不知道从哪里开始起步。如今新手进入软件开发的程序员月...

    一墨编程学习
  • 9个,程序员又爱又恨的编程习惯

    编程习惯No. 1:使用goto 关于禁止使用goto可以追溯到许多结构化编程工具还未面世的时代。如果程序员想要创建一个循环或跳到另一段程序中,那么他们需要输入...

    BestSDK
  • JavaScript 二进制转文件

    首先, 我们需要得到二进制的数据以及相应的文件格式,没有相应的格式也可以,可以通过二进制来判断,但相对会麻烦很多,所以建议可以要求后端提供文件的名字来得到相应的...

    菜的黑人牙膏
  • 为何Google将几十亿行源代码放在一个仓库?| CSDN博文精选

    【AI科技大本营导读】与大多数开发者的想象不同,Google只有一个代码仓库——全公司使用不同语言编写的超过10亿文件,近百TB源代码都存放在自行开发的版本管理...

    AI科技大本营
  • 持续反馈如何反作用于持续交付和持续集成?

    ? 作者简介: ? 梁定安 腾讯织云负责人,目前就职于腾讯社交网络运营部,开放运维联盟委员,腾讯云布道师,腾讯学院讲师,EXIN DevOps Master讲...

    DevOps时代

扫码关注云+社区

领取腾讯云代金券