首页 > 解决方案 > 使用与我看到的略有不同的 VBA 范围

问题描述

我之前看到过一些看起来像这样的范围:

Dim r as Range
Set r = "A1:A3"

但是,我正在尝试从旧 Excel 文件中破译一些代码,并且想知道如何将这种类型的范围选择保存在变量中

 Range( _
    "3:3,5:5,7:7,9:9,11:11,13:13,15:15,17:17,19:19,21:21,23:23,25:25,27:27,29:29,31:31" _
    ).Select

我试图做一些更简单的事情,比如:

  Dim r As Range   
  Set r = range("3:3")

我可以看到这是做什么的,但我不断收到错误消息。有没有人有任何想法?

标签: excelvba

解决方案


首先让我从修复我最初所做的开始,我有 3 个帐户甚至都不知道这一点。

Dim r As Range
Set r = Range( _
"3:3,5:5,7:7,9:9,11:11,13:13,15:15,17:17,19:19,21:21,23:23,25:25,27:27,29:29,31:31" _
).Select

因为我在编写代码时使用了.Select

 Dim r As Range
 Set r = Range( _
"3:3,5:5,7:7,9:9,11:11,13:13,15:15,17:17,19:19,21:21,23:23,25:25,27:27,29:29,31:31" _
)
r.Select

这是有效的。老实说,我不必将变量设为范围,而只是使用了 range().select,但我试图理解我试图破译工作的代码的选择部分。同时学习 VBA 和解密代码是令人困惑的 :)


推荐阅读