VBA 程序名称

示例

程序做点事。使用动词在他们做的事情后给他们命名。如果无法正确命名一个过程,则可能是该过程做了太多事情,需要分解为更小,更专业的过程。

因此,一些常见的VBA命名约定如下:


对于所有程序:

PascalCase

Public Sub DoThing()

End Sub

Private Function ReturnSomeValue() As [DataType]

End Function

对于事件处理程序过程:

ObjectName_EventName

Public Sub Workbook_Open()

End Sub

Public Sub Button1_Click()

End Sub

事件处理程序通常由VBE自动命名。在不重命名对象的情况下重命名它们和/或已处理的事件将破坏代码-代码将运行并编译,但是处理程序过程将被孤立并且永远不会执行。

布尔成员

考虑一个布尔返回函数:

Function bReadFile(ByVal strFile As String, ByRef strData As String) As Boolean
End Function

相比于:

Function CanReadFile(ByVal path As String, ByRef outContent As String) As Boolean
End Function

该Can前缀服务于相同的目的b前缀:它标识函数的返回值作为Boolean。但是Can读起来比b:

If CanReadFile(path, content) Then

相比:

If bReadFile(strFile, strData) Then

考虑使用诸如的前缀Can,Is或Has在返回布尔值的成员(函数和属性)之前使用前缀,但前提是要增加值。这符合当前的Microsoft命名准则。