我不是一个Visual Basic的人,但我的任务是维护一个旧的VB6应用程序.每当我签出一个文件时,编辑器会自动用小写替换一堆大写的变量名.我怎么能阻止这个!?我不想让它们全部改回来,当我试图找出真正的差异时,让这些变化出现在SourceSafe"差异"中是一件痛苦的事.
它也会在定义中自动更改它:Dim C as Control变为Dim c作为Control.Dim X&变成Dim x&.但它不会一直这样做; 例如,从Dim x&下来的三行,有一个Dim Y&,大写,它没有改变.为什么这样对我呢?
继续DJ的回答 ......
它不仅会改变同一范围内变量的情况.
它将改变整个项目中具有相同名称的所有变量的大小写.因此,即使它们在一个地方以大写形式声明,另一个模块可能使用小写的相同变量名称使用不同的变量,导致项目中的所有变量都更改为小写,具体取决于加载的声明(?)或最后编辑.
所以你的C和X变量改变大小写的原因,而Y不是,可能是因为C和X也在你的项目中的其他地方声明,但是小写,而Y则不是.
有它的另一提到这里,他们大多似乎涉及这样的变量名时情况下被用于区分全局变量局部冲突.他们最终选择了前缀.
我能想到的唯一选择是使用其他一些具有VB6突出显示功能的编辑器进行编辑......
由于我总是发现这个线程首先寻找一个混乱套管的解决方案,这里有一个Simon D在相关问题中提出:
如果你只需要修复一个变量的外壳(例如你不小心做了一个cOrrectCAse
变量,现在它们到处都是),你可以通过添加来纠正这个问题.
#If False Then Dim CorrectCase #End If
到你的模块的开头.如果保存项目并稍后删除该语句,则外壳保持正确.
使用Excel VBA我经常不小心都改变Range.Row
以Range.row
通过不小心调暗row
一些函数内部变量-与西蒙D的解决方案的帮助下我现在可以解决这个问题.
枚举更糟糕.在使用枚举的任何地方出错都会改变定义的大小写.