Excel VBA枚举types定义:成员定义更改大小写
我会尽我所能来正确地说出这个问题。
VBA IDE具有此function,它将把variables名称中的字符大小写更改为最后inputvariables名称的情况。
例如,让我们说我开始在SUB中的以下行:
VAR1 = 1
现在,让我们说我input以下行:
var1 = 2
整个子现在变成:
var1 = 1 var1 = 2
我知道我可以通过使用Dim语句或任何范围声明声明variables来阻止这种情况的发生。
问题:我在类模块中使用Enum。 而且该类的公共属性之一与Enum相关联。 我已经在成员名称中使用某些字符来使其可读(骆驼大小写)。
现在,当用户在其标准代码模块中设置该属性时,如果将它们全部以小写formsinput,则类模块中的Enum定义随之一起更改。
有没有办法阻止这种情况的发生?
有没有办法阻止这种情况发生?有没有办法阻止这种情况发生?
看来我的答案是否定的。 多年来,我把它放在一边,只是牢记这一行为。 而且,它也适用于标准模块。 。
Option Explicit
和Dim
保护variables名称。 但是它不会保护枚举中的值名称。
例:
Option Explicit Private Enum MyEnum Item1 = 1 iTem2 = 2 CamelCaseItem = 3 End Enum Private CamelCaseVariable As Integer Sub test() Dim myVariable As MyEnum myVariable = Item1 + CamelCaseItem 'myVariable = camelcaseitem Debug.Print myVariable 'camelcasevariable = 3 End Sub
如果取消注释'myVariable = camelcaseitem
”,则值名称CamelCaseItem
的字母大小写将在枚举声明中更改。
如果你取消'camelcasevariable = 3
注释,那么这一行的字母大小写将会改变,但声明中的情况不会改变。