VBA自动更改.范围到.range

Sie*_*BIC 9 excel vba autocomplete excel-vba

我一直在编写一个Excel宏来帮助我处理工作中的数据,现在我已经完成了代码的编写,因为Microsoft Visual Basic不断变化,所以我一直都会遇到错误.Range到.range.每当它执行此操作时,我会收到编译错误,因为该方法不存在.

有没有什么办法解决这一问题?有没有办法绕过使用.Range如果没有?只要我的代码不断从.Range更改为.range,它就会在这里继续吐出错误.

已解决:错误不是以方法为根,而是以前面的数据成员为根.

kay*_*e99 18

尝试在代码中的某处将Range作为范围声明(注意大小写):

Dim Range As Range
Run Code Online (Sandbox Code Playgroud)

然后删除该语句.

这应该将你所有的转换rangeRange

  • 精彩的答案。可笑的问题。微软到底在想什么?! (2认同)

Chr*_*007 5

编辑:OP说:

已解决:错误不是以方法为根,而是以前面的数据成员为根.

但是,小写方法的相关问题可以来自创建您命名的变量或例程,range系统将根据该定义自动更改大小写.您永远不应该创建一个与定义过程相同名称的变量或例程Range().如@RubberDuck所述:

这是VB不区分大小写的副作用,IDE试图"有用".

  • 我只想补充一点,这是 VB 不区分大小写和 IDE 试图“有用”的副作用。 (2认同)
  • 我刚刚检查过 我目前没有任何命名范围.我之前确实有一个名为ranger的变量,但它已被删除. (2认同)

Lin*_*iel 0

当您多次使用“范围”等单词时,自动更正会将“范围”值更改为“范围”。尝试手动将此方法更改为“Range”,并确保您没有任何“range”等变量。