选择命令在VBA中更改为小写

时间:2016-09-23 10:06:11

标签: excel vba selection vbe

当我的同事在其中编写带有Selection引用的宏时,由于某种原因,它会将单词Selection更改为小写s并停止工作。

示例:

Selection.Copy

更改为

selection.Copy

有人可以告诉你发生了什么事吗?我猜他的设置在哪里,因为他以前没有写过任何宏。

1 个答案:

答案 0 :(得分:4)

VB编辑器将根据您的代码用于变量,子例程和其他类型的名称的内容自动大写,并且它将使用与类型的范围大致相同的顺序进行大写。

您可以通过查找名为selection的任何变量并将大小写更改为Selection来解决此问题。如果您找不到任何内容,请尝试暂时添加名为Selection的变量,并且所有范围内的内容都会发生变化。

例如,如果您定义一个名为workshEEts的变量,请注意使用ThisWorkbook.Worksheets.Count将使用相同的大小写:

Dim workshEEts As Workbook
Debug.Print ThisWorkbook.workshEEts.Count

但是编辑器中也存在一个小问题,因为在删除之后,它甚至会缓存名称。例如,如果从上面的示例中删除第一行,则第二行的大小写保持不变,添加Worksheets的新用法会导致缓存的大小写:

Debug.Print ThisWorkbook.workshEEts.Count
ThisWorkbook.workshEEts(1).Select

那么,你如何清除缓存?使用您需要的外壳创建一个新变量,即使只是暂时变量,然后更新所有范围内容:

Dim Worksheets
Debug.Print ThisWorkbook.Worksheets.Count
ThisWorkbook.Worksheets(1).Select