有时,VBA会自动更正我用大写字母写成小写字母的代码。尽管在非常特殊的情况下,这似乎以字母C
和R
最为常见。
例如,VBA喜欢将[C1].Value
自动更正为[c1].Value
,而.Row
经常自动更正为.row
。这是我目前在项目中经常使用的两个短语,并且始终会自动更正。
但是,例如,键入.Count
不会导致更正。至于R
,恐怕我想不出一个等效的例子...
VBA这样做有明确的理由吗?我的结果似乎从未受到这些更正的影响,尽管我想知道在.Row
和.row
之间是否存在明显的区别。
答案 0 :(得分:1)
请注意,这并不重要,因为vba不区分大小写。
因此expression.Row
和expression.row
被评估为同一事物
关于原因,正如其他人在评论中指出的,最可能是因为您使用了具有相同名称的变量/过程/对象/模块/类/用户格式(例如row
,但小写)-这本身并不是最佳编程实践,应尽可能避免。
另外要注意的一个重要事项是,如果您声明的内容使用小写字母,即使删除声明后,它仍将自动更正为小写字母。 (抱歉,谢谢微软)。要解决此问题,请使用大写字母重新声明变量(或其他变量),然后再次删除该声明。< / p>