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 ExplicitDim保护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注释,那么这一行的字母大小写将会改变,但声明中的情况不会改变。